Docker教程 – 如何使用Docker安装wordpress

如何使用Docker安装wordpress
Docker是什么组成的?
Docker是一个系统,它提供预先配置的、自包含的应用程序、框架和软件堆栈,如WordPress、Golang或LAMP。甚至整个Linux发行版都可以在Docker中运行。在部署时,这些软件包被称为容器。Docker还允许您创建自己的容器,其中包含您想要的任何自定义软件。

Docker Compose是一个互补的系统,它帮助您将各个Docker容器链接在一起,以便它们可以一起工作。本指南介绍了WordPress容器和另一个MySQL容器的部署,WordPress将使用它们来存储数据。Docker Compose将促进它们之间的网络连接。

WordPress和MySQL的容器可以从Docker Hub中以图像的形式获得。Docker映像是用于创建新容器实例的容器的静态快照。Docker Hub是一个官方的存储库,个人和组织可以上传Docker图像供公众使用。

为什么要用Docker来运行WordPress
WordPress和MySQL镜像由各自的组织维护在Docker Hub上,使用它们有以下好处:

软件的配置已经为您完成了,这意味着您不需要对每个应用程序进行分步处理来让它们在您的系统上运行。
更新您的软件就像从Docker Hub下载最新的图像一样简单。
图像和容器是自包含的,这意味着如果您决定删除它们,它们很容易清理。

安装Docker

这些步骤使用官方Ubuntu库安装Docker Community Edition (CE)。要在另一个发行版上安装,请参阅官方安装页面。

删除任何旧的安装Docker可能在您的系统:

1.删除系统上可能存在比较旧的Docker系统:

sudo apt remove docker docker-engine docker.io

2.确保您具有必要的软件包以允许使用Docker的存储库:

sudo apt install apt-transport-https ca-certificates curl software-properties-common

添加Docker的GPG密钥:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

验证GPG密钥的指纹:

sudo apt-key fingerprint 0EBFCD88

您应该看到类似于以下内容的输出:

pub   4096R/0EBFCD88 2017-02-22
        Key fingerprint = 9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88
uid     Docker Release (CE deb) 
sub   4096R/F273FCD8 2017-02-22

添加stableDocker存储库:

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

注意
对于Ubuntu 19.04,如果出现E: Package 'docker-ce' has no installation candidate错误,这是因为docker for的稳定版本尚不可用。因此,您将需要使用边缘/测试存储库。

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable edge test"

更新您的软件包索引并安装Docker CE:

sudo apt update
sudo apt install docker-ce

将您的受限Linux用户帐户添加到该docker组:

sudo usermod -aG docker $USER

注意
输入usermod命令后,您将需要关闭SSH会话并打开一个新会话,此更改才能生效。
通过运行内置的“ Hello World”程序来检查安装是否成功:

docker run hello-world

安装Docker Compose 固定链接
下载最新版本的Docker Compose。检查发布页面,并1.21.2在下面的命令中替换为标记为最新版本的版本:

sudo curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

设置文件权限:

sudo chmod +x /usr/local/bin/docker-compose

设置WordPress 永久链接
在主文件夹中创建一个新目录,名为my_wordpresscd进入该目录:

mkdir ~/my_wordpress/
cd ~/my_wordpress/

docker-compose.yml在此文件夹中创建一个名为的文件,并添加以下内容。设置您自己的密码的WORDPRESS_DB_PASSWORDMYSQL_ROOT_PASSWORDMYSQL_PASSWORD环境的选择。密码输入的WORDPRESS_DB_PASSWORD,并MYSQL_PASSWORD应该是相同的。

docker-compose.yml
version: '3.3'
services:
wordpress:
depends_on:
- db
image: wordpress:latest
volumes:
- wordpress_files:/var/www/html
ports:
- "80:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: my_wordpress_db_password

db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: my_db_root_password
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: my_wordpress_db_password
volumes:
wordpress_files:
db_data:

my_wordpress目录启动Docker容器:

docker-compose up -d

Docker容器将花费一两分钟来启动WordPress和MySQL。之后,您可以在网络浏览器中访问Linode的IP地址,并且应该转到WordPress设置表单。
如何使用Docker安装wordpress

您可以选择为WordPress网站设置域。我们登陆域名商网站选择域名设置DNS到IP地址关联。

设置DNS记录后,还应该在WordPress常规选项中将IP地址替换为您的域:
如何使用Docker安装wordpress

使用和维护永久链接
如果重新启动服务器,则无需手动启动容器,因为该选项restart: always已分配给docker-compose.yml文件中的服务。此选项告诉Docker Compose在服务器启动时自动启动服务。

停止WordPress应用程序:

cd ~/my_wordpress/
docker-compose down

当Docker容器停止时,它也会被删除;这就是Docker设计的工作方式。但是,您的WordPress文件和数据将被保留,因为该docker-compose.yml文件已配置为为该数据创建持久命名卷。

如果要删除此数据并从WordPress网站重新开始,则可以将--volumes标志添加到上一个命令。这将永久删除您到目前为止所做的WordPress帖子和自定义设置。

docker-compose down --volumes

更新WordPress 固定链接
用于docker-compose.yml指定latestWordPress图片的版本,因此很容易更新WordPress版本:

docker-compose down
docker-compose pull && docker-compose up -d

相关参考资料:

您可以参考下面的资源获取有关的其他信息。关您可以参考以下参考资料。虽然我们提供这些资料是希望它们是有用的,需要注意的是我们不能担保外部托管资料的准确性或及时性。

Docker Hub上的官方WordPress映像
Docker Compose概述| Docker文档
快速入门:撰写和Wordpress | Docker文档

本文由 学习链 作者:学习链 发表,其版权均为 学习链 所有,文章内容系作者个人观点,不代表 学习链 对观点赞同或支持,未经许可,禁止转载,题图来自Unsplash,基于CC0协议。

发表评论