도커로 데이터베이스 배포 (mariadb)

jaybon·2022년 12월 9일
0

도커

목록 보기
3/4

도커 파일

password는 제대로 작성해야한다 (배포시 해킹 당할 위험있음)

# 도커 허브에서 이미지를 가져와서 이미지를 작업한다
# FROM (이미지 이름:버전)
FROM mariadb

# 컨테이너 실행 전 작동할 명령
# RUN (명령)
# 타임존 설정 (설정을 하지 않으면 시간 저장시 다른 시간대로 저장됨)
RUN ln -snf /usr/share/zoneinfo/Asia/Seoul /etc/localtime
RUN echo Asia/Seoul > /etc/timezone

# 이미지 내부 환경 설정
# ENV (타겟) (내용)
ENV MYSQL_USER testuser
ENV MYSQL_PASSWORD password
ENV MYSQL_ROOT_PASSWORD password

빌드

일반 빌드

docker build -t 이미지이름 도커파일경로

M1 맥북 빌드

docker build —platform linux/amd64 -t 이미지이름 도커파일경로

-t 옵션 : 이미지 태그

볼륨 설정

볼륨을 설정하지 않으면 도커 재배포 시 데이터베이스 데이터가 삭제되기 때문에 볼륨을 설정하여 따로 저장해야한다.

볼륨 생성 이후에는 삭제하지 않고 백업해야 안전하다.

docker volume create 볼륨이름

docker volume ls 으로 볼륨 확인가능

배포

docker run -it --restart=always -d -p 3306:3306 -v 볼륨이름:/var/lib/mysql --name 컨테이너이름 이미지이름

-it : 컨테이너 접속용
--restart=always : 도커 재구동시 자동 실행
-d : 백그라운드 실행
-p : 포트설정 ex) 80:8080 80으로 접속시 8080으로 인바운드
-v : 볼륨 설정
--name : 컨테이너 이름 설정

인바운드 설정

데이터베이스는 연결된 서버와 관리자 IP 주소만 열어두는 것이 좋다.

profile
티스토리 블로그 https://ondolroom.tistory.com/

0개의 댓글