docker基本命令及搭建php环境

 

docker  容器基本命令

 

列出所有的容器 ID

docker ps -aq

 

停止所有的容器

docker stop $(docker ps -aq)

  

删除所有的容器

docker rm $(docker ps -aq)

  

删除所有的镜像

docker rmi $(docker images -q)

 

查看容器IP

docker inspect  容器ID

  

查看容器日志

docker logs 容器ID

  

容器自动重启

docker container update --restart=always NAMES(容器名称)

复制文件

docker cp mycontainer:/opt/file.txt /opt/local/docker cp /opt/local/file.txtmycontainer:/opt/

 

现在的docker有了专门清理资源(container、image、网络)的命令。

docker 1.13 中增加了docker system prune的命令,针对container、image可以使用docker container prune、docker image prune命令。

删除所有不使用的镜像

docker image prune --force --all

docker image prune -f -a` :

  

删除所有停止的容器

docker container prune: 

 

进入容器内

docker exec -it 容器名称 或id /bin/bash

  

----------------------------------------------------

docker 搭建  nginx + mysql + php-fpm

 

 docker 安装php 

 

docker pull php:7.2-fpm

docker images
运行php
docker run -p 9000:9000 -d --name myphp-fpm -v /docker/www:/www php:7.2-fpm
查看状态
docker ps –a
进入正在运行的php容器
docker exec -it myphp-fpm bash

docker php安装 扩展
进入容器内  pecl install  

安装redis
  pecl install -o -f redis
  rm -rf /tmp/pear 
  docker-php-ext-enable redis

   

安装nginx

 

1.搜索nginx

docker search nginx

2.拉取nginx

docker pull docker.io/nginx 

3.查看是否下载成功

docker images 

4.启动nginx

docker run -p 80:80 -d --name mynginx  -v /docker/www:/www nginx 
docker run --name mynginx -p 80:80 -p 443:443 -v /docker/www:/www -v /docker/nginx/conf/vhosts/:/etc/nginx/conf.d --link myphp7.2:php -d docker.io/nginx:latest

  

-p 80:80:将容器的80端口映射到主机的80端口

-p 443:443:将容器的443端口映射到主机的443端口

-v /docker/www:/www  将容器/www目录映射到宿主机的/docker/www/下

-v /docker/nginx/conf/vhosts/:/etc/nginx/conf.d 将容器/虚拟主机配置目录映射到宿主机的/docker/nginx/conf/vhosts/下 等

-d 后台运行(守护进程) --name mynginx:将容器命名为mynginx 

容器互连,互相通讯,如果不配置 则nginx无法使用docker php
--link 容器名称 myphp7.2:php

  

 5.查看是否开启成功

docker ps –a

  

搭建成功,可以运行一下 查看是否 Nginx启动成功

 

6.重启nginx

  

docker ps -a 查看容器id

  

docker restart e14c6641077b

   

 错误:ngnix  报错 403 是因为没有挂载目录权限

chcon -Rt svirt_sandbox_file_t /docker/www

  

docker 使用composer 管理

docker pull composer

docker run -it -v /docker/www:/app composer:latest composer install 

/docker/www 是本地需要使用composer 的路径
/app 固定路径

  

docker 启动mysql

sudo docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=root-d mysql:5.7

  

 docker 启用redis

docker run -p 6379:6379 --name myredis  redis:latest -d redis-server

  

docker 安装rabbitmq 外网不能访问

执行rabbitmq-plugins enable rabbitmq_management

  

posted @ 2019-08-02 10:41  墨白`Blog  阅读(844)  评论(0编辑  收藏  举报