大佬教程收集整理的这篇文章主要介绍了使用docker搭建个人博客,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
下面只是说明了 docker的基本应用方式c;只要有镜像就可以搭建出相应的服务。
[root@ccx ~]# docker pull wordpress
[root@ccx ~]# docker pull mysql
[root@ccx ~]# docker images | egrep 'wordpress|mysql'
hub.c.163 wangt.cc /library/wordpress latest dccaeccfba36 3 years ago 406 MB
hub.c.163 wangt.cc /library/mysql latest 9e64176cd8a2 4 years ago 407 MB
[root@ccx ~]#
[root@ccx ~]# mkdir /data
[root@ccx ~]# docker run -dit --name=db --restart=always -v /data:/var/lib/mysql -e MYSQL_ROOT_password=haha -e MYSQL_DATABASE=wordpress hub.c.163 wangt.cc /library/mysql
91afdb4857d21319187ccf2832d6721c85c4ffc82eab375e4b888e686cbbaf2a
[root@ccx ~]#
参数解释
/data:/var/lib/mysql
:将容器中的数据分贝到本地/data目录中-e MYSQL_ROOT_password=haha
: 容器的root密码-e MYSQL_DATABASE=wordpress
:创建一个wordpress数据库【自定义的名称】[root@ccx ~]# docker inspect db | grep IPA
"SecondaryIpaddresses": null,
"Ipaddress": "172.17.0.2",
"IPAMConfig": null,
"Ipaddress": "172.17.0.2",
[root@ccx ~]#
systemclt start firewalld
如果不开启防火墙c;创建会报如下错误:[root@ccx ~]# docker run -dit --name=blog --restart=always -v /blog:/var/www/html -p 80:80 -e WORDPRESS_DB_HOST=172.17.0.2 -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_password=haha -e WORDPRESS_db_name=wordpress hub.c.163 wangt.cc /library/wordpress
783b36c5b95b0a1c59ade6d4a262c1026ff1acdd6e48f821fbcf25647056576e
/usr/bin/docker-current: Error response from daemon: driver failed progrAMMing external connectivity on endpoint blog (a1b4c8d66e5a74c7fdddc78f7299b7168cab3c20ecc0fc3c83402040a9ba6186): (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 80 -j DNAT --to-desTination 172.17.0.3:80 ! -i docker0: iptables: No chain/target/match by that name.
(exit status 1)).
[root@ccx ~]# docker run -dit --name=blog --restart=always -v /blog:/var/www/html -p 80:80 -e WORDPRESS_DB_HOST=172.17.0.2 -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_password=haha -e WORDPRESS_db_name=wordpress hub.c.163 wangt.cc /library/wordpress
c34d8efdf953e576089065897d71a20367b03a6e9967db278144de3740c6884d
-v /blog:/var/www/html
:是将容器/var/www/html的文件存储到本地的/blog中-p 80:80
将容器的80端口映射到本机的80端口WORDPRESS_DB_HOST==mysql 的ip
WORDPRESS_DB_USER=哪个用户连接
WORDPRESS_DB_password=连接密码
WORDPRESS_db_name=使用哪个库
[root@ccx ~]# #docker run -dit --name=blog --restart=always -v /blog:/var/www/html -p 80:80 --link=db:xx -e WORDPRESS_DB_HOST=xx -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_password=haha -e WORDPRESS_db_name=wordpress hub.c.163 wangt.cc /library/wordpress
[root@ccx ~]#
[root@ccx ~]# #docker run -dit --name=blog --restart=always -v /blog:/var/www/html -p 80:80 --link=db:mysql hub.c.163 wangt.cc /library/wordpress
[root@ccx ~]#
[root@ccx ~]# ip a |grep 192
inet 192.168.16.128/24 brd 192.168.159.255 scope global noprefixroute dynamic ens33
inet 192.168.16.129/24 brd 192.168.159.255 scope global noprefixroute dynamic ens34
inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
[root@ccx ~]#
192.168.16.128
即可【默认80端口可以不用输入】 我上面的用户名是root
c;密码是haha
[root@ccx ~]# docker run -dit --name=blog --restart=always -v /blog:/var/www/html -p 80:80 -e WORDPRESS_DB_HOST=172.17.0.2 -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_password=haha -e WORDPRESS_db_name=wordpress hub.c.163 wangt.cc /library/wordpress
docker: Error response from daemon: Conflict. The container name "/blog" is already in use by container "54c6c70f6cc37749e72a654ba5a53bd35fe822a194c5cff2706571e3fe7721d9". You have to remove (or rename) that container to be able to reuse that name.
这种情况使用:docker ps -a
是可以看到刚才创建的容器存在的c;只是状态不是run罢了
[root@ccx ~]# docker rm blog
blog
[root@ccx ~]#
[root@ccx ~]# docker run -dit --name=blog --restart=always -v /blog:/var/www/html -p 80:80 -e WORDPRESS_DB_HOST=172.17.0.2 -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_password=haha -e WORDPRESS_db_name=wordpress hub.c.163 wangt.cc /library/wordpress
235afb37d724431e3489b3efdbc0173be3bc47727c5a0cbc673de7c90b686288
docker: Error response from daemon: driver failed progrAMMing external connectivity on endpoint blog (eb4f1d1ae1c98f0ede1d842c91ea04dd566af9f34c46bda0388039c8b888131f): Bind for 0.0.0.0:80 failed: port is already allocated.
[root@ccx ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
0b033eb76f52 hub.c.163 wangt.cc /library/mysql "docker-entrypoint.s…" About a minute ago Up About a minute 3306/tcp db
b245ace74000 nginx:v1 "nginx -g 'daemon of…" 4 weeks ago Up 7 minutes 0.0.0.0:80->80/tcp, :::80->80/tcp web
[root@ccx ~]# docker rm web -f
[root@ccx ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
0b033eb76f52 hub.c.163 wangt.cc /library/mysql "docker-entrypoint.s…" About a minute ago Up About a minute 3306/tcp db
报错如下 如果是常规情况c;我们可以直接关闭防火墙即可c;但这是容器创建的wordpressc;不能关闭防火墙c;防火墙关了wordpress容器就自动停了【拍错步骤在下面c;不要跳过c;一步一步跟着走】
首先要确定虚拟机上的这2个容器状态为UP
[root@ccx ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
92ae6f30b0de hub.c.163 wangt.cc /library/wordpress "docker-entrypoint.s…" 18 minutes ago Up 13 minutes 0.0.0.0:80->80/tcp, :::80->80/tcp blog
0b033eb76f52 hub.c.163 wangt.cc /library/mysql "docker-entrypoint.s…" 23 minutes ago Up 13 minutes 3306/tcp db
[root@ccx ~]#
[root@ccx ~]# netstat -netlp | grep 80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 0 101265 22294/docker-proxy
tcP6 0 0 :::80 :::* LISTEN 0 101488 22299/docker-proxy
[root@ccx ~]
[root@ccx ~]# curl 192.168.16.128
curl: (7) Failed connect to 192.168.16.128:80; Connection refused
[root@ccx ~]#
[root@ccx ~]# docker stop blog
blog
[root@ccx ~]# docker start blog
blog
[root@ccx ~]#
[root@ccx ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
92ae6f30b0de hub.c.163 wangt.cc /library/wordpress "docker-entrypoint.s…" 24 minutes ago Up 3 minutes 0.0.0.0:80->80/tcp, :::80->80/tcp blog
0b033eb76f52 hub.c.163 wangt.cc /library/mysql "docker-entrypoint.s…" 29 minutes ago Up 19 minutes 3306/tcp db
[root@ccx ~]
[root@ccx ~]# netstat -netlp | grep 80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 0 101265 22294/docker-proxy
tcP6 0 0 :::80 :::* LISTEN 0 101488 22299/docker-proxy
[root@ccx ~]# curl 192.168.16.128 #因为这网站没打开过c;所以是没内容的c;只要不报错就可以了
[root@ccx ~]#
以上是大佬教程为你收集整理的使用docker搭建个人博客全部内容,希望文章能够帮你解决使用docker搭建个人博客所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。