ECS의 태스크 정의에서 컨테이너 간 연결 오류가 발생했을 때의 조치

5148 단어 ECR오류ECS도커AWS
ECR에 푸시한 Docker의 컨테이너를 ECS로 태스크 정의를 실시해, 만일 태스크의 실행을 하면 상태가 STOPPED가 된다.

수십 번 해도 다음과 같은 오류가 발생합니다.

Cannot link to a non running container

덧붙여서 컨테이너의 설정은 이하와 같이 되어 있다.

docker-compose.yml
version: "3.8"
services:
  app:
    build:
      context: .
      dockerfile: ./docker/php/Dockerfile
      args:
        - TZ=${TZ:-Asia/Tokyo}
    ports:
      - ${APP_PORT:-8000}:8000
    volumes:
      - ./backend:/work
      - ./logs:/var/log/php
      - ./docker/php/php.ini:/usr/local/etc/php/php.ini
    working_dir: /work
    environment:
      - DB_CONNECTION=mysql
      - DB_HOST=db
      - DB_DATABASE=${DB_NAME:-***}
      - DB_USERNAME=${DB_USER:-***}
      - DB_PASSWORD=${DB_PASS:-***}
      - TZ=${TZ:-Asia/Tokyo}
  web:
    build:
      context: .
      dockerfile: ./docker/nginx/Dockerfile
    depends_on:
      - app
    ports:
      - ${WEB_PORT:-80}:80
    volumes:
      - ./backend:/work
      - ./logs:/var/log/nginx
      - ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf
    environment:
      - TZ=${TZ:-Asia/Tokyo}
  db:
    image: mysql:8.0
    volumes:
      - db-store:/var/lib/mysql
      - ./logs:/var/log/mysql
      - ./docker/mysql/my.cnf:/etc/mysql/conf.d/my.cnf
    environment:
      - MYSQL_DATABASE=${DB_NAME:-***}
      - MYSQL_USER=${DB_USER:-***}
      - MYSQL_PASSWORD=${DB_PASS:-***}
      - MYSQL_ROOT_PASSWORD=${DB_PASS:-***}
      - TZ=${TZ:-Asia/Tokyo}
    ports:
      - ${DB_PORT:-13306}:3306
volumes:
  db-store:
├─backend
│  ├─laravel
├─docker
│  ├─mysql
│  ├─nginx
│  └─php
│─docker-compose.yml
app 컨테이너와 web 컨테이너를 연결한다는 내용입니다.
backend\laravel에는 Laravel 프로젝트가 포함되어 있습니다.

태스크 정의의 설정을 변경하거나 클러스터 설정을 아무리 변경해도 이 오류가 뱉어집니다! ! !

이런 에러가 제일 귀찮아. . .

다만, 대략 2일간에 걸쳐 이 에러의 해소법을 알았다.

원인은 「태스크 정의」시에 실시하는 「컨테이너의 추가」.

app 컨테이너를 추가할 때 "환경"에서 다음 명령을 추가합니다.
chmod 777 -R && php-fpm



단 한 줄의 명령으로 인해 이틀 동안 시간을 ​​보냈다. . .

부디 모두 여러분 조심하세요! !

이상, 「ECS의 태스크 정의로, 컨테이너간 접속의 에러가 일어났을 때의 대처법」이었습니다!

좋으면 LGTM, 코멘트 부탁드립니다.

또, 뭔가 잘못되어 있는 것이 있으면 지적 받을 수 있으면 다행입니다.

그 밖에도 초보자를 위해 기사를 투고하고 있으므로 시간이 있으면 다른 기사도 봐주세요! !

Thank you for reading

좋은 웹페이지 즐겨찾기