教你如何使用Podman架设本机WordPress网站

podman 和 Docker 一样是一种虚拟化技术,可以在操作系统中,建立不同的虚拟 OS,或是建立各种虚拟服务器或数据库,不再使用时,随时能将这些 Server 或 Database 删除,不会把操作系统弄得乱七八糟。

教你如何使用Podman架设本机WordPress网站

podman 可用来:

  • 建立虚拟 ubuntu 或其它 linux os
  • 建立 Apache 或各种服务器
  • 建立 MySQL 或执行各种数据库

那为什么不直接用 docker 就好了,有几个原因:

  1. Kubernetes 已经弃用 Docker
  2. Red Hat 也使用 podman 取代 Docker
  3. Docker 不再是完全免费使用,podman 依旧是免费开放原始码
  4. podman is daemonless
  5. podman is rootless

podman 不需要先在背景执行服务 (daemonless),不像 Docker 需要一个背景服务来管理所有的容器,一旦服务有问题,所有启动的容器就一起挂了。

podman 不强制用 root 权限执行,相对比 Docker 安全许多。

如何安装 podman

podman 是 Linux 的系统工具,现在已经支持 macOS 和 Windows,在 macOS 安装非常方便,用 Homebrew 一行指令完成安装。

brew install podman

如何使用 podman 架设 WordPress 网站

范例网站架构如下图:

教你如何使用Podman架设本机WordPress网站

img src: Net7 – Blog – Combining containers into pods with Podman

首先建立一个 pod,然后在同一个 pod 中执行数据库和 WordPress 网站服务器,pod 开放 8081 port,我们就可以使用 http:://localhost:8081 开启本机 WordPress 网站。

#1 使用 podman 建立 pod

pod 的概念和 Kubernetes pod 非常相似,而且 podman 真的可以读取 kubernetes yaml 档案来管理 pod 和容器的执行。

podman 就是 pod manager 的意思。

参考说明:

以下范例为直接建立一个 pod,然后把所有 container 放在同一个 pod 执行,这些 container 可以直接使用 localhost 彼此沟通,不必费心各自 IP。

podman pod create --name wordpress-test -p 8081:80

指令说明:

  • podman pod create,建立 pod
  • –name,指定名称
  • -p,port 对应,外部:内部

注意 pod 建立后就不能改 port mapping。

#2 使用 podman 执行 MariaDB

为什么不是 MySQL,因为呢,MariaDB 有提供 arm64 版本的 image,可以在 M1 MacBook 上执行,MySQL 没有,而且 MariaDB 的所有参数和使用方式,和 MySQL 一模一样,啊就是为了无缝取代 MySQL 👍。

podman run -d --pod=wordpress-test

-e MYSQL_ROOT_PASSWORD="geheim"

-e MYSQL_DATABASE="wp"

-e MYSQL_USER="wordpress"

-e MYSQL_PASSWORD="w0rdpr3ss"

--name=wordpress-test-db mariadb

指令说明:

  • podman run,执行容器
  • -d,run as daemon
  • –pod,指定在上面建立的 pod 中执行
  • -e,设定环境变量,数据库的账号密码等等
  • –name,指定容器名称,方便管理

#3 使用 podman 执行 WordPress

podman run -d  --pod=wordpress-test

-e WORDPRESS_DB_NAME="wp"

-e WORDPRESS_DB_USER="wordpress"

-e WORDPRESS_DB_PASSWORD="w0rdpr3ss"

-e WORDPRESS_DB_HOST="127.0.0.1"

--name wordpress-test-web wordpress

指令说明:

  • podman run,执行容器
  • -d,run as daemon
  • –pod,指定在上面建立的 pod 中执行
  • -e,设定环境变量,数据库的账号密码等等
  • –name,指定容器名称,方便管理

啊不就和上面的 MariaDB 一样,是啊,容器执行都差不多。

本机架设 WordPress 完成,开启 http://localhost:8081,全新的 WordPress 安装开始。

原创文章,作者:开心电脑网,如若转载,请注明出处。

(1)
上一篇 2022年8月28日
下一篇 2022年12月2日

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注