도커 공부하면서 컨테이터를 실행시키는데 그 컨테이너가 port 5000을 사용한다. 그런데 실행시키니 포트 5000이 이미 사용중이라는 것이다. Error response from daemon: Ports are not available: listen tcp 0.0.0.0:5000: bind: address already in use 왜..?..그래도 침착히 port를 죽이면 된다. 이런 문제쯤이야..식은 죽 먹기다 lsof -i:5000 위 명령어로 사용하고 있는 pid를 확인 후 죽이면 된다. kill [pid] 그러나 죽이고 다시 컨테이너를 실행시켜도..또..사용중이래...죽이고 또 죽이고...내가 루트계정으로 안죽여서 그런가...sudo도 사용해보고..그래도 안죽어... 다시 보니 COMMAND에..
앞 포스트에서 컨테이너를 실행시킬 때 run 명령어를 사용했는데, run은 pull, create, start 이 한번에 이뤄지는 간단한 명령어이다. 1️⃣pull : 이미지 다운로드 $ docker pull nginx 2️⃣create : 다운 받은 이미지를 컨테이너화 $ docker create --name [컨테이너명] nginx 3️⃣start : 컨테이너 실행 $ docker start [컨테이너명] ✨컨테이너 상태 확인 옵션 -a를 넣는 경우 running과 관계 없이 모든 컨테이너 출력, 옵션 사용하지 않는 경우에는 running중인 컨테이너만 출력 $ docker ps -a 4️⃣inspect : 운영 중인 컨테이너 정보 확인하기 - port, IPAddress, MacAddress,Net..
무엇을 컨테이너로 만들까? 하나를 어플리케이션이 있다고 생각한다면, 어플리케이션을 운영하기 위한 환경이 필요하다. 예를 들어 java로 만들어진 프로그램이 데이터베이스로 mysql을 사용한다면, 운영환경엔 java와 mysql이 설치 되어 있어야 할 것이다. 개발한 어플리케이션과 운영환경이 모두 들어있는 독립된 공간이 컨테이너이다. 예를 들어서 MSA환경의 polyglot 어플리케이션 운용하는 경우 쇼핑카트기능, 결제기능을 다른 환경에서 개발이 되어 있다면, 쇼핑카트기능을 하나의 컨테이너로, 결제기능을 또 하나의 컨테이너로 만든다. ✨ 컨테이너 만드는 방법 dockerfile ( 컨테이너를 구성하기 위한 명령어의 집합체 )을 통해 컨테이너를 빌드한다.명렁어들이 많기 때문에..필요한건 아래 홈페이지에서 검..
#실행 중인 도커 확인 $ docker ps 로그인 docker hub에 먼저 가입을 한 후 터미널에 아래의 명령어를 입력해주면, username과 password를 입력할 수 있다. https://hub.docker.com/ Docker Hub Container Image Library | App Containerization Build and Ship any Application Anywhere Docker Hub is the world's easiest way to create, manage, and deliver your teams' container applications. hub.docker.com $ docker login 이미지 검색 및 다운로드 nginx의 이미지가 있는지 검색해보고 다운..
원래는 virtural machine을 다운 받아서 가상머신 위에 설치하려고 했는데, 맥 m1 칩은 vm 설치가 불가능하다고 하여, mac 용 docker를 다운받았다. homebrew를 통해 다운 받고 설치를 해주었다. Docker 설치 $ brew install --cask docker ✨설치후 application에 다운로드 된 프로그램을 한번 실행 시켜줘야 터미널에서 작업할 수 있다.✨ 프로그램을 한번 실행시키지 않고 바로 docker 명령어를 쓰게 되면 아래와 같이 명령어를 찾을 수 없다고 나온다.(command not found : docker) 프로그램을 한번 시작해주고, 다시 터미널에서 명령어를 실행시키면 잘 실행 되는 것을 알 수 있다. hombrew로 다운 받지 않고 홈페이지를 통한 다..
NTP란? 패킷교환, 레이턴시 데이터 네트워크를 통해 컴퓨터 시스템 간 시간 동기화를 위한 네트워크 프로토콜 경험에 의해 깨달은 중요성 우리 회사는 구글 STT와 TTS를 사용한다. 그런데 시스템 재배포후 갑자기 TTS가 안되는 현상이 발생했다. 당일 배포한 동시에 배포한 시스템이 많고, 새로 오픈한 시스템도 있었기에 갑자기 안되는 TTS 때문에 많은 업체가 밤 11시까지 대기하는 상황이 벌어졌다. 결국 다른 업체들은 11시에 배포를 원상복귀 시키고, 우리도 원상복귀를 시켰는데 그래도 안되는 상황.. 아예 서비스 불가로 큰일 난 상황이다.. 너무너무 눈치보이고..내 잘못인거 같고🥺...신입의 나에게는 너무나...큰 시련이었다..4개월간 잘 돌아가던 시스템이 안되는 이상한 상황.. 심지어 배포작업이 없었던..
구문 JSON_REPLACE(json_doc, path, val[, path, val] ...) * json_doc : 컬럼명 * path : 변경할 값의 경로 * val : 변경할 값 사용예시 TB_ADDRESS 테이블의 ADDRESS_INFO 컬럼에 아래와 같은 JSON형태의 데이터가 담겨져있다. addressList의 첫번째 맵의 detail에 아무 값이 없는데, 이 값을 변경하고 싶다. UPDATE TB_ADDRESS SET ADDRESS_INFO = JSON_REPLACE(ADDRESS_INFO, '$.addressList[0].doroAddress.detail', '변경할 값') WHERE TOKEN =#{token} 그런데 아래에도 detail이 있고, 도로명주소와 지번주소의 차이이기 때문에..
useRef란? 리액트를 사용하다 보면 focus라던지, 스크롤 설정이라던지 DOM에 직접적으로 접근 해야하는 경우가 생긴다. 그럴 때 사용하는것이 useRef이다. 기본 사용법 1️⃣ useRef()를 사용하여 객체를 만든다. import React, { useRef } from 'react'; const exampleRef = useRef(); 2️⃣ 접근하고자 하는 DOM에 ref 값으로 만들어준 객체 값을 넣어준다. import React, { useRef } from 'react'; const exampleRef = useRef(); const example = () => { return ( ); } export default example; 3️⃣ DOM활용하기 : ref객체의 .current..
- Total
- Today
- Yesterday
- java 코테
- springboot
- 코딩테스트
- softeer java
- 아파치카프카
- 쿠버네티스
- 오토에버코테
- centos
- react
- 현대
- 톰캣
- javascript
- Spring
- 전자정부프레임워크
- 자바
- mysql
- 코테
- tomcat
- 리액트
- Docker
- java
- Linux
- 자바코테
- 현대오토에버
- 현대코테
- 자바스크립트
- Kubernetes
- softeer
- 도커
- 스프링
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |