docker compose 使用记录

docker构建lnmp环境,docker-compose.yaml文件内容如下:

version: "3.6"

services: # 代表就是构建一组服务 -》一组容器 php,nginx,redis
  php:  # 要创建的服务-》就是容器php
    build:
      context: ./php         #由dockerFile生成
    image: php_compose
    container_name: php_compose # 指定创建的容器名称
    ports: # 绑定端口
      - "9001:9000" # - "宿主机端口 : 容器端口"
    volumes: # 数据卷
      - "//echo/docker/shine2004/09/lnmp/php/www:/www" # - "宿主机目录 : 容器目录"
  nginx: # 要创建的服务-》就是容器nginx
    build:
      context: ./nginx
    image: nginx_compose
    container_name: nginx_compose # 指定创建的容器名称
    ports:
      - "8001:80"
    volumes:
      - "//echo/docker/shine2004/09/lnmp/nginx/conf:/conf"
    command: top
  redis: # 要创建的服务-》就是容器redis
    image: redis5asm
    container_name: redis_compose # 指定创建的容器名称
    ports:
      - "6379:6379"
    command: top

docker-compose.yaml文件下执行:
docker-compose up -d

问题:
在这里插入图片描述
信息显示我们启动的容器状态为Exited (1) About a minute ago,也就是说虽然创建了容器,但是该容器并未正常运行;

控制终端缺失
启动失败是因为缺失了控制终端的配置,这里有两种方式修复;

使用tty参数(推荐使用)
修改docker-compose.yml,增加一个配置tty:true,如下:

master:
image: java:8u111-jdk
tty: true
1
2
3
先执行docker-compose down将之前的容器删除,再执行docker-compose up -d启动,可以发现启动成功,并且可以成功进入容器进行操作

dokcer查看日志

docker logs -f -t --since="2018-02-08" --tail=100 容器名
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值