>> docker pull php:7.2-fpm //冒号后选择版本 >> docker pull nginx >> docker pull mysql:5.7 //不需要本地数据库可忽略 >> docker pull redis:3.2 //不需要本地redis可忽略 >> docker images //查看已下载的所有镜像
>> docker run --name mydb -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
>> docker run --name myredis -p 6379:6379 -d redid:3.2
>> docker run -d -p 9000:900 --name myphp -v /server/www:/var/www/html -v /server/php:/usr/local/etc/php --link mydb:mydb —link myredis:myredis --privileged=true php:7.2-fpm
>> docker run --name mynginx -d -p 80:80 -v /server/www:/usr/share/nginx/html -v /server/nginx:/etc/nginx -v /server/logs/nginx.logs:/var/log/nginx —link myphp:myphp —privileged=true nginx
>> docker ps -a //查看所有容器运行成功 这里环境也就基本搭建完成了
>> docker exec -ti myphp /bin/bash //首先进入容器 >> docker-php-ext-install pdo pdo_mysql //安装pdo_mysql扩展 >> docker-php-ext-install redis //安装redis扩展
>> tar zxvf /server/php_lib/redis-4.1.0.tag //解压已经下载好的redis扩展包 >> docker cp /server/php_lib/redis-4.1.0 mytho:/usr/src/php/ext/redis //将扩展放到容器中 再执行安装
>> pecl install redis && docker-php-ext-enable redis //pecl安装redis >> docker restart myphp //装完扩展 exit退出容器 重启容器 * 其它常用命令 >> docker stop $(docker ps -q) //停止所有容器 >> docker rm $(docker ps -aq) //删除所有容器 >> docker rmi $(docker images -q) //删除所有镜像 >> docker inspect myphp 查看容器配置信息
docker run --name mynginx -d -p 80:80 -v /server/nginx:/etc/nginx --link myphp:myphp --privileged=true nginx
>> curl -L https:github.com/docker/compose/releases/download/1.8.1/docker-compose-`uname -s`-`name -m` > /usr/local/bin/docker-compose >> chmod +x /usr/local/bin/docker-compose >> docker-compose —version //查看版本信息
>> cd /server/compose >> docker-compose up -d
>> cd /server/compose.dockerfiles >> docker-compose up -d
1. 查询自动化部署的容器组环境所在网段 >> docker network ls //查询所有网段命令 >> docker inspect mynginx //查询nginx所在网段 找到HostConfig.NetworkMode下所对应值 例如:composedockerfiles_default 2. 先删除 nginx 容器 >> docker stop mynginx && docker rm mynginx 3. 重启一个新的 nginx 容器 并且桥接相同网段 >> docker run —name mynginx -d -p 80:80 -p 443:443 -v /server/www:/usr/share/nginx/html -v /server/nginx:/etc/nginx -v /server/logs/nginx.logs:var/log/nginx --link myphp:myphp —new=composedockerfiles_default —privileged=true nginx //在原来的基础上-p加上新端口443 并且使用网段桥接 --net=composedockerfiles_default
>> docker exec -i myphp /bin/bash -c ‘/usr/local/bin/php /var/www/html/blog/public/index.php'