成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

當下運行容器的三個步驟

開發
如何真正開始使用容器呢?從容器到 Kubernetes 的成長路徑是什么?另外,為什么有不止一條路徑?如你所料,最好的起點就是現在。

在本教程中,你將學習如何在一個“吊艙”中運行兩個容器來托管一個 WordPress 站點。

無論你是將其作為工作的一部分、未來的工作機會或者僅僅是出于對新技術的興趣,容器對很多人,即使是經驗豐富的系統管理員,可能是非常難以應付的。那么如何真正開始使用容器呢?從容器到 Kubernetes 的成長路徑是什么?另外,為什么有不止一條路徑?如你所料,最好的起點就是現在。

1、了解容器

略一回憶,容器的開端可以追溯到早期 BSD 及其特殊的 chroot 監獄,但讓我們直接跳到發展中期講起。

之前,Linux 內核引入了 “控制組cgroup”,允許你能夠使用 “命名空間namespace” 來“標記”進程。當你將進程分組到一個命名空間時,這些進程的行為就像在命名空間之外的東西不存在一樣,這就像你把這些進程放入某種容器中。當然,這種容器是虛擬的,它位于計算機內部,它和你操作系統的其余進程使用相同的內核、內存和 CPU,但你用容器包含了這些進程。

分發的預制容器僅包含運行它所包含的應用程序必須的內容。使用容器引擎,如 Podman、Docker 或 CRI-O,你可以運行一個容器化應用程序,而無需進行傳統意義上的安裝。容器引擎通常是跨平臺的,因此即使容器運行在 Linux 上,你也可以在其他 Linux、MacOS 或 Windows 上啟動容器。

更重要的是,當需求量很大時,你可以運行同一應用程序的多個容器。

現在你知道了什么是容器,下一步是運行一個容器。

2、運行一個容器

在運行容器之前,你應該有一個想要運行它的理由。你可以編一個,這有助于你對讓容器創建過程感興趣,這樣你就會受到鼓舞,真正去使用你所運行的容器。畢竟,運行容器但不使用它提供的應用程序,只能證明你沒有注意到任何故障,但使用容器證明它可以工作。

我推薦從 WordPress 開始,它是一個很流行的 Web 應用程序,容易使用,所以一旦容器運行起來,你就可以測試使用它。雖然你可以輕松地配置一個 WordPress 容器,但還是有很多配置選項可以引導你發現更多運行容器的方式(例如運行數據庫容器)以及容器如何通信。

我使用 Podman,它是一個友好、方便且無守護進程的容器引擎。如果你沒有安裝 Podman,可以改用 Docker 命令。它們都是很棒的開源容器引擎,而且它們的語法是相同的(只需輸入 docker 而不是 podman)。因為 Podman 沒有守護進程,所以它需要更多的配置,但為了這種運行免 root、無守護進程的容器的能力是值得的。

如果你使用 Docker,可以跳到下面的 運行 WordPress 容器 小節,否則,打開終端安裝并配置 Podman:

$ sudo dnf install podman

容器會產生許多進程,通常只有 root 用戶有權創建數千個進程 ID。創建一個名為 /etc/subuid 的文件,定義一個適當的起始 UID 和大量合法的 PID,這樣就可以為你添加一些額外的進程 ID:

seth:200000:165536

在名為 /etc/subgid 的文件中對你的組執行相同的操作。在這個例子中,我的主要組是 staff(對你來說可能是 users,或者和你的用戶名一樣,這取決于你的系統)。

staff:200000:165536

最后,確認你的用戶可以管理很多命名空間:

    $ sysctl --all --pattern user_namespaces
user.max_user_namespaces = 28633

如果你的用戶無權管理超過 28,000 個命名空間,創建 /etc/sysctl.d/userns.conf 文件來增加數量并輸入:

user.max_user_namespaces=28633

運行 WordPress 容器

現在,無論你使用的是 Podman 還是 Docker,你都可以從在線容器倉庫中下載 WordPress 容器并運行它。你可以使用以下 Podman 命令完成所有這些操作:

    $ podman run --name mypress \
-p 8080:80 -d wordpress

給 Podman 一會時間來找到容器、從互聯網下載它,然后啟動。

在收到終端返回提示符后,啟動 Web 瀏覽器,打開 localhost:8080。WordPress 正在運行,等待你進行設置。

WordPress 容器

不過,你很快就會遇到障礙,因為 WordPress 使用數據庫來存儲數據,因此你需要為其提供一個數據庫。

在繼續之前,停止并刪除 WordPress 容器:

    $ podman stop mypress
$ podman rm mypress

3、在吊艙中運行容器

正如名字所暗示的那樣,容器在設計上是獨立的。在容器中運行的應用程序不應該與在容器外的應用程序或基礎設施進行交互。因此,當一個容器需要另一個容器才能運行時,一種解決方案是將這兩個容器放在一個更大的容器中,稱為 “吊艙pod”。吊艙確保其容器可以共享重要的命名空間以便相互通信。

創建一個新的吊艙,為它提供一個名稱,以及希望能夠訪問的端口:

    $ podman pod create \
--name wp_pod \
--publish 8080:80

確認吊艙存在:

    $ podman pod list
POD ID NAME STATUS INFRA ID # OF CONTAINERS
100e138a29bd wp_pod Created 22ace92df3ef 1

將容器添加到吊艙

現在你已經為相互依賴的容器創建了一個吊艙,你可以通過指定一個運行的吊艙來啟動每個容器。

首先,啟動一個數據庫容器。你可以創建自己的憑據,只要在 WordPress 連接到數據庫時使用相同的憑據。

    $ podman run --detach \
--pod wp_pod \
--restart=always \
-e MYSQL_ROOT_PASSWORD="badpassword0" \
-e MYSQL_DATABASE="wp_db" \
-e MYSQL_USER="tux" \
-e MYSQL_PASSWORD="badpassword1" \
--name=wp_db mariadb

接下來,在同一個吊艙中啟動 WordPress 容器:

    $ podman run --detach \
--restart=always --pod=wp_pod \
-e WORDPRESS_DB_NAME="wp_db" \
-e WORDPRESS_DB_USER="tux" \
-e WORDPRESS_DB_PASSWORD="badpassword1" \
-e WORDPRESS_DB_HOST="127.0.0.1" \
--name mypress wordpress

現在啟動你最喜歡的網絡瀏覽器并打開 localhost:8080。

這一次,設置會正常進行。WordPress 會連接到數據庫,因為你在啟動容器時傳遞了這些環境變量。

WordPress 啟動

創建用戶賬戶后,你可以登錄查看 WordPress 儀表板。

WordPress dashboard running in a container

下一步

你已經創建了兩個容器,并在一個吊艙中運行了它們。你現在已經了解了如何在自己的服務器上運行容器及服務。如果你想遷移到云,容器非常適合你。使用像 Kubernetes 和 OpenShift 這樣的工具,你可以自動化啟動 集群上的容器和吊艙。如果你正在考慮采取下一步行動,閱讀 Kevin Casey 的 3 個開始使用 Kubernetes 的方法,并嘗試他提到的 Minikube 教程。

責任編輯:未麗燕 來源: Linux中國
相關推薦

2021-08-19 11:22:22

深度學習編程人工智能

2017-08-01 08:41:29

Oracle開源容器

2019-01-29 07:14:41

2022-10-12 14:33:15

數字化轉型網絡安全數據中心

2021-01-15 10:51:32

物聯網安全物聯網IOT

2010-08-02 23:40:42

Linux NFS

2019-05-05 10:11:27

數據中心效率DCIM

2018-01-17 08:36:31

云存儲策略步驟

2022-04-02 09:00:00

GitOps開發團隊

2010-10-09 21:42:13

SNMP網絡安全

2010-11-17 10:39:29

職場

2009-08-21 17:48:13

C#讀取文件信息

2011-05-19 13:49:09

2024-04-25 12:40:09

云安全云遷移

2010-09-29 16:04:54

Cisco IOS D

2010-11-15 09:56:30

2022-04-15 09:30:00

Kubernetes云計算多云

2020-07-20 09:20:44

云計算云安全數據

2010-06-28 13:40:22

SNMP協議服務

2021-10-12 09:23:29

物聯網安全物聯網IOT
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产a区 | 国产精品一区久久久 | 日韩视频―中文字幕 | 国户精品久久久久久久久久久不卡 | 精品日韩一区 | 久久久久久国产精品免费免费狐狸 | 一区二区三区视频在线 | 久久久精品综合 | 欧洲成人免费视频 | 三级免费网 | 欧美三级视频在线观看 | 亚洲日日 | 国产精品免费观看 | 国产精品久久精品 | 精品久久久久一区 | 91av免费观看 | 99精品欧美一区二区蜜桃免费 | av国产精品毛片一区二区小说 | 免费在线观看一区二区 | 69xxx免费| 亚洲三区在线 | 国产一区 | 精品国产乱码久久久久久图片 | 毛片a级| 亚洲精品区 | 国产区精品| 国产婷婷综合 | 国产欧美一区二区三区在线看 | 亚洲一区亚洲二区 | 日韩在线观看 | 国产99久久精品 | 日本精品视频一区二区 | 亚洲一区二区三区在线 | 特级特黄特色的免费大片 | 欧美日韩高清 | 午夜精品影院 | 欧美一级免费看 | 精品伦精品一区二区三区视频 | 欧美片网站免费 | 久久国产精品视频 | 日本久久精品 |