docker-composeでコンテナを起動させ続ける

NO IMAGE

docker-compose up でコンテナを立ち上げるとき、起動時に実行されるコマンドでポート待ち受け等をしていない限り、コンテナがすぐに終了してしまうかと思います。

この現象を防ぎ、コンテナを起動させ続けるには、docker-compose.ymlのttyをtrueに設定することが必要です。

services:
  express:
    image: public.ecr.aws/bitnami/node:14.15.1-debian-10-r8
    ports:
      - "3000:3000"
    tty: true # これが必要
    volumes:
      - ./:/usr/src/app
    working_dir: /usr/src/app

これで、以下コマンドでコンテナ内部に入って操作することができます。

docker-compose exec -it {サービス名} bash

また、本題とはずれますが、working_dirを指定することでDockerfileでいうところのWORKDIRを指定することができます。