개발공부/Docker 5

[Docker] MySQL 접속하기 및 로컬호스트 접속 오류해결

docker exec -it [container-name] bin/bash mysql -u root -p USE [database명]; SHOW TABLES; 이때 비밀번호는 도커파일에서 작성한 비밀번호를 입력해주면 된다 services: database: image: "mysql" restart: always container_name: database environment: MYSQL_DATABASE: traveleye MYSQL_ROOT_HOST: "%" MYSQL_ROOT_PASSWORD: 1234 ports: -"3307:3306" volumes: -./:/var/lib/mysql 이때, root 가 없는 호스트라는 오류가 생겼는데 이를 해결하기 위해서 1. root 에게 모든 권한을 주는 코드..

개발공부/Docker 2023.12.08

[Docker] Ports are not available 오류

docker: Error response from daemon: Ports are not available: listen tcp 0.0.0.0:3306: bind: address already in use. 1) 처음 시도한 방법 sudo lsof -i :포트번호 sudo kill -9 PID번호 kill 을 해도 계속 새로운 PID 가 생겨나서 없어지지 않았다. 2) HOST 의 새로운 포트와 연결을 해주었다 docker run --name -e MYSQL_ROOT_PASSWORD= -d -p 3307:3306 mysql docker exec -it bash -p 5001:5000 basically means, bind port 5001 in my host machine with the port 500..

개발공부/Docker 2023.02.17

[Docker] 명령어 정리

2023.02.17 docker 이미지 pull docker pull [이미지 이름] ex. docker pull mysql:5.7 docker run 명령어는 컨테이너를 생성하고 실행함 docker run -d -it --name [컨테이너이름] mysql docker create 명령어는 단순히 컨테이너 생성 docker create -i --name [컨테이너이름] mysql docker stop 명령어는 컨테이너 중지시킴 docker stop [컨테이너이름] docker start 명령어로 docker create로 생성한 컨테이너를 실행함 docker start [컨테이너이름] docker rm 명령어로 docker 를 삭제함 docker rm -f [컨테이너이름] docker rmi [이미지 ..

개발공부/Docker 2023.02.17

[Docker] docker 사용하는 이유

일단 Docker 를 왜 사용하는 것일까? 예시로, 서비스 A 에서 내가 node.js 버전을 1.0 을 쓴다고 하자 서비스 B 에서는 node.js 버전을 2.0 을 쓴다고 하자 그럼 작업을 하던 와중에 개발환경을 따로 설정해줘야할게 많을 것이고, 오류가 빈번히 일어날 것이다. 그렇다면 서비스 A 를 위한 가상환경을 세팅, 서비스 B 를 위한 가상환경을 세팅한다면? 그러면 컴퓨터 자원을 20%, 30% 씩 따로 할당해줘야하고, 컴퓨터가 갖고 있는 OS 를 충분히 활용하지 못하는 낭비현상이 일어날 것이다 이런 문제를 보완해주는게 "Docker" 이다. Docker 를 사용하게 되면, 컴퓨터 내에서 꼭 필요한 공간만큼을 차지하게 되고, 각자 자원을 "공유"을 하는 개념이기 때문에 낭비를 줄일 수 있다. D..

개발공부/Docker 2023.02.17