利用Docker部署LNMP环境

作者: 风 哥 分类: Docker 发布时间: 2018-12-20 11:46

1、创建网络,让容器处于同一个网络可以相互通信。

[root@docker-master ~]# docker network create lnmp
fa400f6b355cf15ac497d25ed5851d448117888cee253f1fd376555dd765eb89

2、创建MySQL数据库容器,通过mount做持久化,防止数据丢失。

docker run -itd \
--name lnmp_mysql \
--net lnmp \
-p 3306:3306 \
--mount src=mysql-vol,dst=/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
mysql:5.7 --character-set-server=utf8

#查看持久卷mysql-vol

[root@docker-master ~]# docker volume ls
DRIVER              VOLUME NAME
local               144c5839b36278cea8b3bc7bf3d10d051c11e7acc5610d420f25314f240ef574
local               a0c117c96d84eeaeebd548eda827577f17926a595c85ea69a9f4ea9f756c1557
local               f0e495702096c6845110ae74e0ed24455059e1265831acca1bb303458b4400ab
local               mysql-vol

#下面这个目录是MySQL初始化存放的数据/var/lib/docker/volumes/mysql-vol/_data/

[root@docker-master ~]# ll /var/lib/docker/volumes/mysql-vol/_data/
total 188476
-rw-r----- 1 polkitd ssh_keys       56 Dec 12 06:14 auto.cnf
-rw------- 1 polkitd ssh_keys     1679 Dec 12 06:14 ca-key.pem
-rw-r--r-- 1 polkitd ssh_keys     1107 Dec 12 06:14 ca.pem
-rw-r--r-- 1 polkitd ssh_keys     1107 Dec 12 06:14 client-cert.pem
-rw------- 1 polkitd ssh_keys     1679 Dec 12 06:14 client-key.pem
-rw-r----- 1 polkitd ssh_keys      419 Dec 12 06:14 ib_buffer_pool
-rw-r----- 1 polkitd ssh_keys 79691776 Dec 12 06:14 ibdata1
-rw-r----- 1 polkitd ssh_keys 50331648 Dec 12 06:14 ib_logfile0
-rw-r----- 1 polkitd ssh_keys 50331648 Dec 12 06:14 ib_logfile1
-rw-r----- 1 polkitd ssh_keys 12582912 Dec 12 06:14 ibtmp1
drwxr-x--- 2 polkitd ssh_keys     4096 Dec 12 06:14 mysql
drwxr-x--- 2 polkitd ssh_keys     4096 Dec 12 06:14 performance_schema
-rw------- 1 polkitd ssh_keys     1679 Dec 12 06:14 private_key.pem
-rw-r--r-- 1 polkitd ssh_keys      451 Dec 12 06:14 public_key.pem
-rw-r--r-- 1 polkitd ssh_keys     1107 Dec 12 06:14 server-cert.pem
-rw------- 1 polkitd ssh_keys     1675 Dec 12 06:14 server-key.pem
drwxr-x--- 2 polkitd ssh_keys    12288 Dec 12 06:14 sys

3、创建wordpress所需数据库

[root@docker-master ~]# docker exec -it lnmp_mysql sh -c 'mysql -uroot -p"$MYSQL_ROOT_PASSWORD" -e "create database wp"'
mysql: [Warning] Using a password on the command line interface can be insecure.

#使用MySQL客户端工具连接MySQL查看新创建的数据库wp是否存在。

4、创建PHP环境容器

docker run -itd \
--name lnmp_web \
--net lnmp \
-p 88:80 \
--mount type=bind,src=/app/wwwroot,dst=/var/www/html richarvey/nginx-php-fpm

5、wordpress博客测试

wget https://cn.wordpress.org/wordpress-5.0.1-zh_CN.tar.gz
tar zxf    wordpress-5.0.1-zh_CN.tar.gz  -C /app/wwwroot

#浏览器测试访问

http://IP:88/wordpress

#这里要注意的是如果容器在同一个网络,可以通过主机名相互通信。主机名填写: lnmp_mysql

#接下来一步一步下去即可完成安装wordpress

一条评论
  • cialis online no prescription

    2019年3月28日 上午3:14

    Its like you read my mind! You appear to know so much about this, like you wrote the book in it
    or something. I think that you can do with some pics to drive the message home a bit,
    but other than that, this is magnificent blog. A fantastic read.
    I’ll certainly be back.

发表评论

电子邮件地址不会被公开。 必填项已用*标注