도커: 두 판 사이의 차이
보이기
172.18.0.1 (토론) 도커 관련 사항 |
172.18.0.1 (토론) |
||
| 21번째 줄: | 21번째 줄: | ||
<pre> | <pre> | ||
version: "3. | version: "3.9" | ||
services: | services: | ||
db: | db: | ||
| 117번째 줄: | 117번째 줄: | ||
2번 wiki | 2번 wiki | ||
<pre> | <pre> | ||
version: "3. | version: "3.9" | ||
services: | services: | ||
db: | db: | ||
2024년 12월 5일 (목) 00:12 판
도커, Docker관련 내용을 모아둔 문서 입니다.
도커 요소
- 스택:Stacks
여러 개의 컨테이너 집합
- 컨테이너:Container
고유 단위 모듈
- 이미지:Images
컨테이너 바이너리 이미지
별도로 push를 해놓아야지만, 나중에 pull로 사용할 수 있음
docker CLI를 이용해서 수정해서 사용 가능 (확인 필요)
Compose 관련
컴포즈의 예, YML 파일
version: "3.9"
services:
db:
image: mariadb:jammy
container_name: MediaWiki-DB
hostname: mediawiki-db
security_opt:
- no-new-privileges:true
environment:
- MYSQL_ROOT_PASSWORD=rootpass
- MYSQL_DATABASE=mediawiki
- MYSQL_USER=mediawikiuser
- MYSQL_PASSWORD=mediawikipass
- TZ=Asia/Taipei
volumes:
- /volume1/docker/mediawiki2/db:/var/lib/mysql:rw
restart: always
mediawiki:
image: mediawiki:latest
container_name: MediaWiki
hostname: mediawiki
security_opt:
- no-new-privileges:true
healthcheck:
test: curl -f http://localhost:80 || exit 1
ports:
- 8795:80
volumes:
- /volume1/docker/mediawiki2/data:/var/www/html/images
- /volume1/docker/mediawiki2/LocalSettings.php:/var/www/html/LocalSettings.php
restart: always
depends_on:
db:
condition: service_started
1. 설명 Service가 db와 mediawiki를 사용한다는 의미
2. name은 반드시 달라야 함
container_name hostname
3. Volumes는 디렉토리 관계를 말함
- /volume1/docker/mediawiki2/db:/var/lib/mysql:rw
설명: 실제 디렉토리 /volume1/docker/mediawiki2/db를 db:/var/lib/mysql:rw 가상 디렉토리 에다 연결(:)
참고: 파일연결도 동일한 방식
- /volume1/docker/mediawiki2/LocalSettings.php:/var/www/html/LocalSettings.php
1번 wiki 구성
version: "3.9"
services:
db:
image: mariadb:jammy
container_name: MediaWiki-DB
hostname: mediawiki-db
security_opt:
- no-new-privileges:true
environment:
- MYSQL_ROOT_PASSWORD=rootpass
- MYSQL_DATABASE=mediawiki
- MYSQL_USER=mediawikiuser
- MYSQL_PASSWORD=mediawikipass
- TZ=Asia/Taipei
volumes:
- /volume1/docker/mediawiki/db:/var/lib/mysql:rw
restart: always
mediawiki:
image: mediawiki:latest
container_name: MediaWiki
hostname: mediawiki
security_opt:
- no-new-privileges:true
healthcheck:
test: curl -f http://localhost:80 || exit 1
ports:
- 8795:80
volumes:
- /volume1/docker/mediawiki/data:/var/www/html/images
- /volume1/docker/mediawiki/LocalSettings.php:/var/www/html/LocalSettings.php
restart: always
depends_on:
db:
condition: service_started
2번 wiki
version: "3.9"
services:
db:
image: mariadb:jammy
container_name: MediaWiki2-DB
hostname: mediawiki2-db
security_opt:
- no-new-privileges:true
environment:
- MYSQL_ROOT_PASSWORD=rootpass
- MYSQL_DATABASE=mediawiki
- MYSQL_USER=mediawikiuser
- MYSQL_PASSWORD=mediawikipass
- TZ=Asia/Taipei
volumes:
- /volume1/docker/mediawiki2/db:/var/lib/mysql:rw
restart: always
mediawiki:
image: mediawiki:latest
container_name: MediaWiki2
hostname: mediawiki2
security_opt:
- no-new-privileges:true
healthcheck:
test: curl -f http://localhost:80 || exit 1
ports:
- 8796:80 # 포트 번호를 8795에서 8796으로 변경
volumes:
- /volume1/docker/mediawiki2/data:/var/www/html/images
- /volume1/docker/mediawiki2/LocalSettings.php:/var/www/html/LocalSettings.php
restart: always
depends_on:
db:
condition: service_started