LoginSignup
1
0

「service "web" is not running container #1」というエラーが出た

Posted at

Dockerを使ってPHP,nginx,MySQLの環境構築でwebサーバーとなるnginxのコンテナ作成をしていた時に
service "web" is not running container #1というエラーに遭遇したので、その解決策を備忘録として残します。

やっていたこと

DockerでPHP(Laravel)+ nginx + MySQLのLEMP環境を構築する
こちらの記事を参考に環境構築に取り組んでいました。
PHPのコンテナを立ち上げるところまでは順調でしたがnginxのコンテナを立ち上げるときにエラーに遭遇しました。

エラーログを確認

スクリーンショット 2024-03-05 19.52.41.png
本来であればPHPのコンテナとnginxのコンテナどちらも立ち上がっていて欲しいのだがdocker-compose psコマンドで確認したところnginxのコンテナが立ち上がっていなかった。
もちろん、docker-compose exec web nginx -vコマンドが機能するわけもなく、、

$ docker-compose up -d --build
// 略
$ docker-compose ps           
NAME                   IMAGE                COMMAND                  SERVICE             CREATED             STATUS              PORTS
docker_handson-app-1   docker_handson-app   "docker-php-entrypoi…"   app  
$ docker-compose exec web nginx -v
service "web" is not running container #1

こんな時はログを確認してみよう。

docker logs docker_handson-web-1
中略
/docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh
/docker-entrypoint.sh: Configuration complete; ready for start up
2024/03/05 19:34:05 [emerg] 1#1: unknown directive "//" in /etc/nginx/conf.d/default.conf:6
nginx: [emerg] unknown directive "//" in /etc/nginx/conf.d/default.conf:6
~/program/2024/docker_handson (main *)

ふむふむ、よくわからんがdefault.confファイルの//の部分が怪しいと。

default.conf
server {
    listen 80;
    server_name example.com;
    root /app/public;    // 書き換え

    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-XSS-Protection "1; mode=block";
    add_header X-Content-Type-Options "nosniff";
    略

コードを見るとコメントアウトの//が悪さしてるかも??
と思い削除してみたら、案の定こいつでした。

$ docker-compose ps               
NAME                   IMAGE                COMMAND                  SERVICE             CREATED             STATUS              PORTS
docker_handson-app-1   docker_handson-app   "docker-php-entrypoi…"   app                 19 minutes ago      Up 19 minutes       9000/tcp
docker_handson-web-1   docker_handson-web   "/docker-entrypoint.…"   web                 10 seconds ago      Up 9 seconds        0.0.0.0:8081->80/tcp

まとめ

原因がよくわからない時はログを確認しよう。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0