Inception 과제 해석

songtofu·2022년 4월 13일
0

서브젝트 요구사항

<일반 지침>
1. Virtual Machine에서 수행
2. 필요한 모든 파일은 srcs 폴더에 있어야 합니다.
3. 한 Makefile은 필수이며 디렉토리의 루트
4. 전체 응용 프로그램을 설정해야 합니다 (즉, Docker-compose.yml을 사용하여 Docker 이미지를 빌드해야 합니다.)

<멘데토리 파트>
1. 특정 규칙에 따라 다양한 서비스로 구성된 소규모 인프라를 설정하는 것으로 구성.
2. 가상 시스템에서 수행되어야 한다. docker-compose 를 사용해야함.
3. 각 도커 이미지는 해당 서비스와 이름이 동일해야 한다.
4. 각 서비스는 전용 컨테이너엣 실행되어야 한다.
5. 성능 문제를 위해 컨테이너는 알파인 리눅스의 궁극적인 안정버전 또는 데비안 버스터에서 제작 되어야한다.(둘 중 선택)
6. 서비스당 하나씩 도커 파일을 작성해야한다.
7. Docker 파일은 Makefile에 의해 Docker-compose.yml에서 호출되어야 합니다.
8. (= 당신 프로젝트의 도커 이미지를 직접 만들어야한다, 이미 만들어진 도커 이미지를 가져오는 것이 금지된다.)
9. 도커 허브(Alpine/Debian)는 8번 규칙엣 제외된다.

1. Docker container 는 NGINX(TLSv1.2 or TLSv1.3)이 포함. 2. nginx없이 WordPress + php-fpm(설치 및 구성되어야 함)만 포함하는 Docker 컨테이너. 3. nginx 없이 MariaDB만 포함하는 Docker 컨테이너입니다. 4. WordPress 데이터베이스가 들어 있는 볼륨입니다.(???????) 5. WordPress 웹 사이트 파일이 들어 있는 두 번째 볼륨입니다. (??volum) 6. 컨테이너 간의 연결을 설정하는 도커 네트워크입니다 7. 충돌 시 컨테이너를 다시 시작해야함.

+) volume는 Docker(Linux에서는 /var/lib/docker/volume/)가 관리하는 Host File System의 일부에 Data가 저장됩니다.

<파란박스 1>
Docker 컨테이너가 가상 시스템이 아닙니다. 따라서 실행하려고 할 때 'tail-f' 등을 기반으로 한 해키 패치를 사용하지 않는 것이 좋습니다. 데몬의 작동 방식과 데몬을 사용하는 것이 좋은지에 대해 읽어 보십시오.

<빨간박스 1>
1. 물론 네트워크: 호스트 또는 --link or links: 사용은 금지됩니다. (using network: host or --link or links: is forbidden.)
2. network line은 docker-compose.yml 파일에 있어야 합니다.
3. 컨테이너를 무한 루프를 실행하는 명령으로 시작하면 안 됩니다.
4. Thus, this also applies to any command used as entrypoint, or used in entrypoint scripts.
(= 따라서 이것은 진입점으로 사용되거나 진입점 스크립트에서 사용되는 모든 명령에도 적용됩니다.) ->진입점??
5. 금지된 hacky patches : tail -f, bash, sleep infinity, while true.

<파란 박스2>
PID 1과 Docker 파일 작성에 대한 모범 사례를 읽어 보십시오.

  1. WordPress 데이터베이스에는 두 명의 사용자가 있어야 합니다.
  2. 그 중 한명은 관리자. 관리자의 사용자 이름에는 admin/Admin or administrator/Administrator (등., admin, administrator, Administrator, admin-123, and so forth) 금지.

<파란 박스3>
Docker를 사용하여 호스트 시스템의 /home/login/data 폴더에서 볼륨을 사용할 수 있습니다. 물론 로그인을 (the login with yours.)당신의 로그인으로 대체해야 합니다.

  1. 더 간단하게 하기 위해 도메인 이름이 다음(11~)을 가리킬 수 있도록 구성해야 합니다.
  2. domain name so it points to your local IP address.
  3. 도메인 이름은 login.42.fr이어야 합니다.
  4. Again, you have to use your own login.
    ex) if your login is wil, <wil.42.fr> will redirect to the IP address pointing to wil’s website.

<빨간 박스>
1. 최신 태그 사용 못함.
2. 도커 파일 암후 없어야함.
3. 환경 변수 사용 필수
4. 환경 변수를 저장하려면 .env파일을 사용하는 것이 좋다. .env 파일은 srcs 디렉토리의 루트에 있어야 합니다.
5. NGINX 컨테이너는 TLSv1.2 또는 TLSv1.3 프로토콜을 사용하는 포트 443을 통해서만 인프라로 들어가는 유일한 진입점이어야 합니다.

<예상 다이어 그램 사진 참고>

<예상되는 디렉토리 구조의 예>

profile
읽으면 머리에 안들어와서 직접 쓰는 중. 잘못된 부분 지적 대환영

0개의 댓글