여러 개의 컨테이너로부터 이루어진 서비스를 구축, 실행하는 순서를 자동으로 하여 간단하게 관리하는 기술
Docker compose에서는 compose 파일을 준비해 커맨드를 1회 실행하는 것으로 그 파일로부터 설정을 읽어들여 모든 컨테이너 서비스를 실행하는 것이 가능
Ubuntu 실행
sudo apt install docker-compose
위 명령어를 입력해서 docker-compose를 설치합니다.
docker-compose.yml
version: "3.2"
services:
database:
image: postgres:14
restart: always
user: postgres
volumes:
- conf:/etc/postgresql
- data:/var/lib/postgresql/pgdata
environment:
POSTGRES_PASSWORD: example
ports:
- 5432:5432
viewer:
restart: always
image: adminer:4
ports:
- 8080:8080
volumes:
conf:
data:
생성한 폴더 아래에 위 코드로 파일을 설정합니다.(postgres에서 root로 접속하려고 해서 username 추가)
사이트에 들어가면 yml에서 설정해야 할 내용을 볼 수 있습니다.
버전 및 필수 값에 대한 내용과 docker-compose yml 파일에 대한 예시 등을 볼 수 있습니다.
yml 파일이 있는 폴더로 가서 docker file을 실행합니다.
docker ps로 확인해보면 잘 작동하는 걸 볼 수 있습니다.(postgresql과 adminer 두 개)
- adminer viewer
어떤 설치도 없이 웹에서 db를 관리할 수 있는 뷰어로 docker image를 받을 때 사용할 수 있도록 도커 파일에 설정했습니다.
sudo apt-get install net-tools
ifconfig -a
위 명령어로 아이피를 확인해 adminer에 접속합니다.
매번 아이피를 확인하는 것은 너무 귀찮기 때문에 아이피를 자동으로 가져와주는 프로그램을 사용해서 편하게 쓸 수 있습니다.
WSLHostPatcher를 다운받아 이용합니다.