一:装置docker和docker-compose

具体装置形式自行查阅材料装置,这里就不赘述了

二:下载mysql-nginx-php镜像并装置一些根底软件及拓展

1:下载mysql镜像

docker pull mysql:5.7

2:下载nginx镜像

docker pull nginx:1.21.6

3:下载php镜像

docker pull php:7.2-fpm

4:给php根底镜像装置拓展及根底软件

docker run -it --name php php:7.2-fpm /bin/bash

应用docker run运行镜像并进入镜像而后执行如下操作

#apt-get 更新apt-get update#根底依赖装置apt-get update && apt-get install -y libfreetype6-dev libjpeg62-turbo-dev libmcrypt-dev libpng-dev#装置wgetapt-get install wget#装置定时器crontabapt-get install cron#装置supervisor过程治理apt-get install supervisor#装置php拓展cd ~wget https://raw.githubusercontent.com/mlocati/docker-php-extension-installer/master/install-php-extensionsmv install-php-extensions /usr/local/binchmod uga+x /usr/local/bin/install-php-extensions && syncinstall-php-extensions 拓展名(bcmath,decimal,exif,gd,imagick,intl,memcached,mongodb,pcntl,pdo_mysql,pdo_pgsql,soap,swoole,zip)#减少一个www用户adduser www

5:将解决好的容器保留为一个镜像

docker commit php php:7.2(将php容器保留为php:7.2镜像)

我这里曾经解决好镜像已上传到我的docker仓库中,后续应用时间接拉取我本人仓库中的镜像即可

三:应用docker-compose基于nginx-mysql-php镜像配置php环境

1:具体的docker-compose文件内容可参考:

docker-compose配置

2:应用docker-compose命令运行容器

docker-compose build --force-rm(构建容器并删除构建过程中创立的长期容器)docker-compose up -d(在后盾运行容器)docker-compose start(启动容器)docker-compose stop(进行正在事后的容器)docker-compose down(删除容器)