본문으로 이동

도커: 두 판 사이의 차이

lse
 
(다른 사용자 한 명의 중간 판 하나는 보이지 않습니다)
108번째 줄: 108번째 줄:
     volumes:
     volumes:
       - /volume1/docker/mediawiki/data:/var/www/html/images
       - /volume1/docker/mediawiki/data:/var/www/html/images
      - /volume1/docker/mediawiki/LocalSettings.php:/var/www/html/LocalSettings.php
    #  - /volume1/docker/mediawiki/LocalSettings.php:/var/www/html/LocalSettings.php
    # 처음 설치시 localsetting 파일이 생성되지 않음 1) 주석처리 설치 2) 주석 지우고 compose update 사용
     restart: always
     restart: always
     depends_on:
     depends_on:
131번째 줄: 132번째 줄:
       - MYSQL_PASSWORD=mediawikipass
       - MYSQL_PASSWORD=mediawikipass
       - TZ=Asia/Taipei
       - TZ=Asia/Taipei
    # - MYSQL_ROOT_HOST=%  # 모든 호스트에서의 접근을 허용, localhost로 DB접근이 안된다는 메시지 있는 경우 사용
     volumes:
     volumes:
       - /volume1/docker/mediawiki2/db:/var/lib/mysql:rw
       - /volume1/docker/mediawiki2/db:/var/lib/mysql:rw
146번째 줄: 148번째 줄:
     volumes:
     volumes:
       - /volume1/docker/mediawiki2/data:/var/www/html/images
       - /volume1/docker/mediawiki2/data:/var/www/html/images
      - /volume1/docker/mediawiki2/LocalSettings.php:/var/www/html/LocalSettings.php
    #  - /volume1/docker/mediawiki/LocalSettings.php:/var/www/html/LocalSettings.php
    # 처음 설치시 localsetting 파일이 생성되지 않음 1) 주석처리 설치 2) 주석 지우고 compose update 사용
 
     restart: always
     restart: always
     depends_on:
     depends_on:
152번째 줄: 156번째 줄:
         condition: service_started
         condition: service_started
</pre>
</pre>
=Network관련 문제=
설치 과정 중에 localhost가 제대로 전달되지 않는 경우가 있음, 127.0.01




[[Category:도커]]
[[Category:도커]]
[[분류:플그램]]

2024년 12월 12일 (목) 06:30 기준 최신판

도커, 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
    # 처음 설치시 localsetting 파일이 생성되지 않음 1) 주석처리 설치 2) 주석 지우고 compose update 사용
    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
    # - MYSQL_ROOT_HOST=%  # 모든 호스트에서의 접근을 허용, localhost로 DB접근이 안된다는 메시지 있는 경우 사용
    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/mediawiki/LocalSettings.php:/var/www/html/LocalSettings.php
    # 처음 설치시 localsetting 파일이 생성되지 않음 1) 주석처리 설치 2) 주석 지우고 compose update 사용

    restart: always
    depends_on:
      db:
        condition: service_started


Network관련 문제

[편집 | 원본 편집]

설치 과정 중에 localhost가 제대로 전달되지 않는 경우가 있음, 127.0.01