引言
由于个人的服务器经常来回更换,在上边配置的LAMP也是一遍又一遍的来回配置,鉴此,我琢磨了一下docker工具,并学习用docker来开发和部署我的网络网络服务器。
docker环境
为了便于调试和安装,我先在我的MAC上安装配置docker环境,由于下载镜像的网络原因,我需要添加我的镜像源,如下(可以参考,阿里云镜像加速需要自己注册,我这里不提供)
{
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"experimental": false,
"registry-mirrors": [
"https://匿名.mirror.aliyuncs.com",
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com"
]
}
docker镜像拉取
使用docker需要pull拉取镜像并部署容器环境,我这里安装apache+php镜像php-7.2apache和mysql最新的镜像mysql:latest
docker pull php:7.2-apache
docker pull mysql
docker容器部署
php容器部署
docker run --name php-server \
-d \
-p 8080:80 \
-v /Users/hrilug/Documents/docker/php:/var/www/html \
php:7.2-apache
mysql容器部署
docker run \
-d \
--name mysql-server \
-p 3306:3306 \
-v /Users/hrilug/Documents/docker/mysql/log:/var/log/mysql \
-v /Users/hrilug/Documents/docker/mysql/data:/var/lib/mysql \
-v /Users/hrilug/Documents/docker/mysql/conf:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=匿名 \
mysql:latest
我这里没有使用数据卷部署,二是本地目录调试,注意
php容器配置mysql插件
// 进入容器
docker exec -it php-container-name /bin/bash
// 切换目录
cd /usr/local/bin
// 安装pdo_mysql扩展
./docker-php-ext-install pdo_mysql
// 安装mysqli扩展
./docker-php-ext-install mysqli
// 退出容器
exit
// 重启容器
docker restart php-container-name