yml 文件代码如下:
version: '3'
services:
nginx-server-8018:
container_name: nginx-8018
image: nginx:latest
depends_on:
- php-server-8018
- mysql-server-8018
tmpfs: /home/yhm/docker-test #挂载临时目录到容器内部,数据是保存到内存中的
ports:
- 8018:80 #端口映射,外部端口:内部端口
networks:
- nginx-networks
volumes: #映射宿主机和容器目录,数据是永久保存的
# - /home/yhm/docker-test:/etc/nginx/conf.d/ #宿主机目录:容器目录
- ./:/usr/share/nginx/html1
php-server-8018:
container_name: php-8018
#build: ./php/
image: php:7.4
mysql-server-8018:
container_name: mysql-8018
image: mysql:latest
environment: #设置镜像变量,它可以保存变量到镜像里面,也就是说启动的容器也会包含这些变量设置
MYSQL_ROOT_PASSWORD: "123456"
MYSQL_DATABASE: ""
MYSQL_USER: "root"
MYSQL_PASSWORD: "123456"
volumes:
- /home/yhm/docker-test:/var/lib/mysql
networks:
nginx-networks:
driver: bridge
然后执行如下两个命令,显示如下:
yhm@:~/server/test$ docker-compose -f ./test.yml up -d
[+] Running 3/3
⠿ Container nginx-8018 Started 1.2s
⠿ Container php-8018 Started 0.4s
⠿ Container mysql-8018 Started 0.3s
yhm@:~/server/test$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
86a53dc2546a nginx:latest "/docker-entrypoint.…" 4 seconds ago Up 2 seconds 0.0.0.0:8018->80/tcp, :::8018->80/tcp nginx-8018
最后的 ps 命令为何只显示了 nginx,而没有 php 和 mysql 呢?
请高人指点一二,谢谢!
答案:另外两个挂了
为什么你看不到错误信息?
因为你用了
-d