文章目录
1. 安装nginx
docker hub上面有相关的关于docker安装服务并做相应自定义配置的教程
步骤如下:
docker pull nginx #不指定tag默认拉取最新的版本latest
docker run --name nginx -p 80:80 -d nginx:latest #running一个容器
mkdir -p /docker/nginx #创建用于挂载nginx所有数据的目录
mkdir -p /docker/nginx/html #创建用于挂载nginx虚拟主机
#拷贝容器中nginx数据目录文件至宿主机中
docker cp nginx:/etc/nginx/nginx.conf /docker/nginx/nginx.conf
docker cp nginx:/etc/nginx/conf.d /docker/nginx
echo "welcome nginx!!!" > /docker/nginx/html/index.html #创建自定义索引页
#重新运行一个容器
[root@docker nginx]# docker run \
> --name mynginx \
> -p 8888:80 \
> -d \
> -v /docker/nginx/nginx.conf:/etc/nginx/nginx.conf \ #将主机目录或者文件与容器相应目录进行关联,则后期只需要在宿主机上进行配置文件的更改,也方便将容器中的数据进行持久化。
> -v /docker/nginx/html:/usr/share/nginx/html \
> -v /docker/nginx/conf.d:/etc/nginx/conf.d \
> nginx:latest
测试:
网页访问: http://宿主机ip:8888,效果如下图:
2. 安装mysql
#步骤如下:
docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7 #运行容器
docker exec -it mysql-sw /bin/bash #进入容器中查看相关配置文件目录
exit
#在宿主机上创建用于容器挂载的目录
mkdir -p /mysql/conf
mkdir -p /mysql/data
mkdir -p /mysql/logs
#拷贝容器中的配置文件并且修改文件内容
docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf /mysql/conf/
vim /mysql/conf/mysqld.conf
character-set-server=utf8
#重新启动一个容器
docker run \
--name mysql \
-p 3306:3306 \
-v /mysql/conf:/etc/mysql/mysql.conf.d/ \
-v /mysql/data:/var/lib/mysql \
-v /mysql/logs:/logs \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7
测试:
宿主机连接mysql:mysql -uroot -proot -h 172.17.0.3
其他人访问mysql:mysql -uroot -proot -h 宿主机ip
大功告成!!!
鲁大师说过:愿中国青年都摆脱冷气,只是向上走,不必听自暴自弃者的话。