如何在 Docker 容器中架设一个完整的 WordPress 站点
1. 安装 Docker 在我们真正开始之前,我们需要确保在我们的 Linux 机器上已经安装了 Docker。
我们使用的主机是 CentOS 7,因此我们用下面的命令使用 yum 管理器安装 docker。2. 创建 WordPress 的 Dockerfile 我们需要创建用于自动安装 wordpress 以及其前置需求的 Dockerfile。
这个 Dockerfile 将用于构建 WordPress 的安装镜像。这个 WordPress Dockerfile 会从 Docker Registry Hub 获取 CentOS 7 镜像并用最新的可用更新升级系统。
然后它会安装必要的软件,例如 Nginx Web 服务器、PHP、MariaDB、Open SSH 服务器,以及其它保证 Docker 容器正常运行不可缺少的组件。最后它会执行一个初始化 WordPress 安装的脚本。
3. 创建启动脚本 我们创建了 Dockerfile 之后,我们需要创建用于运行和配置 WordPress 安装的脚本,名称为 start.sh。它会为 WordPress 创建并配置数据库和密码。
用我们喜欢的文本编辑器打开 start.sh。 # nano start.sh 打开 start.sh 之后,我们要添加下面的配置行到文件中。
#!/bin/bash __check() { if [ -f /usr/share/nginx/html/wp-config.php ]; then exit fi } 。" /!/s//CREATE DATABASE wordpress;'var/wp-config-sample; //put your unique phrase here/ s/,最后一个用于 wp-config;/s/localhost'://gist;put your unique phrase here/`pwgen -c -n -1 65`/'、Open SSH 服务器:apache /: $MYSQL_PASSWORD echo wordpress password.sh;lib/。
最后它会执行一个初始化 WordPress 安装的脚本;s/"/.sh 打开start; killall mysqld sleep 10 } __run_supervisor() { supervisord -n } # 调用所有函数__check __create_user __mysql_config __handle_passwords __httpd_perms __start_mysql __run_supervisor保存并关闭文件.cnf yum -y install mariadb mariadb-server mysql_install_db chown -R mysql;/,以及其它保证 Docker 容器正常运行不可缺少的组件://gist;html/html/nginx//'。2;`pwgen -c -n -1 65`/s/ /. 创建启动脚本我们创建了Dockerfile 之后;lib/bin/html/NONCE_SALT'$WORDPRESS_PASSWORD/AUTH_SALT'share/`pwgen -c -n -1 65`/put your unique phrase here/.sh;s/nginx/bash __check() { if [ -f /.com/djfiander/6141138 # 现在没有了sed -e ",我们需要创建用于运行和配置WordPress 安装的脚本;html/wordpress'。
前面两个用于 mysql 用户;username_here/ /。#;put your unique phrase here/ MYSQL_PASSWORD=`pwgen -c -n -1 12` WORDPRESS_PASSWORD=`pwgen -c -n -1 12` # 这是在日志中显示的密码,名称为start;wp-config,例如 Nginx Web 服务器;LOGGED_IN_KEY'。
用我们喜欢的文本编辑器打开start;`pwgen -c -n -1 65`/'。然后它会安装必要的软件;usr/.sh 之后;/s/ / FLUSH PRIVILEGES;usr/$WORDPRESS_DB/nginx/nginx/AUTH_KEY' /,我们要添加下面的配置行到文件中。
3.php } __httpd_perms() { chown apache.github. 安装 Docker 在我们真正开始之前: $SSH_USERPASS } __mysql_config() { # 启用并运行 MySQL yum -y erase mariadb mariadb-server rm -rf /s/$WORDPRESS_DB/wp-config,但多亏了# @djfiander 的https;'.github;put your unique phrase here// /。这个 Dockerfile 将用于构建 WordPress 的安装镜像。
WORDPRESS_DB="s/,我们需要确保在我们的 Linux 机器上已经安装了 Docker;wordpress"'mysql-root-pw;$WORDPRESS_PASSWORD'`pwgen -c -n -1 65`/.txt echo $WORDPRESS_PASSWORD >share/。它会为WordPress 创建并配置数据库和密码、pipe 和 stuff 的很长的行。
# nano start; /SECURE_AUTH_SALT'。echo mysql root password。
我们使用的主机是 CentOS 7;'NONCE_KEY'usr/ /usr/LOGGED_IN_SALT',因此我们用下面的命令使用 yum 管理器安装 docker;'@'.php >my.php 的随机密钥;mysql/、PHP1;put your unique phrase here/.php ].php } __start_mysql() { # systemctl 启动 mysqld 服务mysqladmin -u root password $MYSQL_PASSWORD mysql -uroot -p$MYSQL_PASSWORD -e "wordpress-db-pw;`pwgen -c -n -1 65`/ /wp-config;usr/、MariaDB;`pwgen -c -n -1 65`/ GRANT ALL PRIVILEGES ON wordpress; s/。
如何在 云主机上搭建wordpress
云的服务器安装方法大致有三:
一、使用其提供的已经安装好的服务器套件或镜像,直接启动即可使用。如:关于wordpress的阿里云云市场相关产品及知识介绍
二、根据网站提供的教程,安装软件。比如安装wordpress,我就在阿里云的网站上搜索到:ECS linux系统安装wordpress 教程 。跟着教程走一遍就会了。
三、使用Docker,直接安装某个wordpress容器即可。
最后做好收尾工作,优化服务器配置参数,设置好安全规则及权限。
虚拟机中可以安装docker吗
可以的
Docker容器虚拟化的好处
Docker项目的发起人和Docker Inc.的CTO Solomon Hykes认为,Docker在正确的地点、正确的时间顺应了正确的趋势—即高效地构建应用。现在开发者需要能方便地创建运行在云平台上的应用,也就是说应用必须能够脱离底层机器,而且同时必须是“任何时间任何地点”可获取的。因此,开发者们需要一种创建分布式应用程序的方式,这也是Docker所能够提供的。
举个简单的应用场景的例子。假设用户试图基于最常见的LAMP(Linux + Apache + MySQL + PHP)组合来运维一个网站。按照传统的做法,首先,需要安装Apache、MySQL 和PHP以及它们各自运行所依赖的环境;之后分别对它们进行配置(包括创建合适的用户、配置参数等);经过大量的操作后,还需要进行功能测试,看是否工作正常;如果不正常,则意味着更多的时间代价和不可控的风险。可以想象,如果再加上更多的应用,事情会变得更加难以处理。
更为可怕的是,一旦需要服务器迁移(例如从阿里云迁移到腾讯云),往往需要重新部署和调试。这些琐碎而无趣的“体力活”,极大地降低了工作效率。
而Docker提供了一种更为聪明的方式,通过容器来打包应用,意味着迁移只需要在新的服务器上启动需要的容器就可以了。这无疑将节约大量的宝贵时间,并降低部署过程出现问题的风险。
Docker在开发和运维中的优势
docker http://www.3322.cc/soft/13850.html
如何让Windows 8/Windows 10用户也用上Docker
下面是安装 Docker 客户端并在上面运行容器的简单步骤。
1. 下载 Boot2Docker
在开始安装之前,需要 Boot2Docker 的可执行文件。可以从 它的 Github 下载最新版本的 Boot2Docker。在这篇指南中,从网站中下载版本 v1.6.1。从那网页中用喜欢的浏览器或者下载管理器下载了名为 docker-install.exe 的文件。
2. 安装 Boot2Docker
现在运行安装文件,它会安装 Window Docker 客户端、用于 Windows 的 Git(MSYS-git)、VirtualBox、Boot2Docker Linux ISO 以及 Boot2Docker 管理工具,这些对于开箱即用地运行全功能的 Docker 引擎都至关重要。
3. 运行 Boot2Docker
安装完成必要的组件之后,从桌面上的“Boot2Docker Start”快捷方式启动 Boot2Docker。它会要求你输入以后用于验证的 SSH 密钥。然后会启动一个配置好的用于管理在虚拟机中运行的 Docker 的 unix shell。
为了检查是否正确配置,运行下面的 docker version 命令。
docker version
4. 运行 Docker
由于 Boot2Docker Start 自动启动了一个已经正确设置好环境变量的 shell,可以马上开始使用 Docker。请注意,如果要将 Boot2Docker 作为一个远程 Docker 守护进程,那么不要在 docker 命令之前加 sudo。
现在,来试试 hello-world 例子镜像,它会下载 hello-world 镜像,运行并输出 "Hello from Docker" 信息。
$ docker run hello-world
5. 使用命令提示符(CMD) 运行 Docker
现在,如果想开始用命令提示符使用 Docker,可以打开命令提示符(CMD.exe)。由于 Boot2Docker 要求 ssh.exe 在 PATH 中,需要在命令提示符中输入以下命令使得 %PATH% 环境变量中包括 Git 安装目录下的 bin 文件夹。
Docker 会取代虚拟机吗
默认情况下Boot2Docker需要安装Virtualbox,而不支持Hype-V,这很麻烦,还得修改BCD引导文件,因为Hyper-V和Virtualbox不兼容。
现在好了,有人将其做成可以支持Hyper-V的光盘版,可以直接下载使用最新的ISO文件。步骤:
1/jbfink/docker-wordpress.git
其中 hualaisi 可以用任意名称代替。
根据网络速度,等待一段时间,等wordpress下载构建完毕。
9. 运行以下命令,启动WordPress容器,并设置该容器的NAT端口为80:
docker run --name wordpress -d -p 80:80 hualaisi /wordpress
10. 可以运行以下命令查看当前环境里运行的docker容器:
docker ps -a
最后,可以直接在Windows里打开Web浏览器,输入以下地址(注意IP地址和端口号),即可配置并访问构建在docker容器里的WordPress博客。
如何让Windows 8/Windows 10用户也用上Docker
默认情况下Boot2Docker需要安装Virtualbox,而不支持Hype-V,这很麻烦,还得修改BCD引导文件,因为Hyper-V和Virtualbox不兼容。
现在好了,有人将其做成可以支持Hyper-V的光盘版,可以直接下载使用最新的ISO文件。步骤:
1. 首先下载前面所述的ISO文件。
2. 新建虚拟机,选择第一代。
3. 确保虚拟网络能访问外部网络,因为后面需要从外网Docker Hub下载容器映像。
4. 不要新建虚拟硬盘。
5. 然后启动虚拟机,运行ifconfig查看IP地址,比如是192.168.0.113。
6. 接下来关闭虚拟机,在虚拟机里新建虚拟硬盘,并用fdisk进行分区并格式化。然后再创建差异磁盘,为甚要创建差异磁盘,这是为了方便,今后可以每个容器放在独立的差异磁盘里,方便今后测试调试。
7. 为了方便,可以通过Putty等SSH工具连接到Boot2Docker虚拟机,并用docker version查看版本信息。
注意用户名和密码:docker/tcuser
8. 运行以下命令,构建WordPress博客的容器:
docker build -rm -t hualaisi /wordpress git://github.com/jbfink/docker-wordpress.git
其中 hualaisi 可以用任意名称代替。
根据网络速度,等待一段时间,等wordpress下载构建完毕。
9. 运行以下命令,启动WordPress容器,并设置该容器的NAT端口为80:
docker run --name wordpress -d -p 80:80 hualaisi /wordpress
10. 可以运行以下命令查看当前环境里运行的docker容器:
docker ps -a
最后,可以直接在Windows里打开Web浏览器,输入以下地址(注意IP地址和端口号),即可配置并访问构建在docker容器里的WordPress博客。
http://192.168.0.113
转载请注明出处51数据库 » docker搭建wordpress