最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Docker鏡像容器安裝與使用

2023-02-28 10:17 作者:伊那瀨Inalai  | 我要投稿


軟件介紹:

https://baike.baidu.com/item/Docker/13344470?fr=aladdin

使用場(chǎng)景:

  1. 線上正式環(huán)境是內(nèi)網(wǎng),且無(wú)法連接外網(wǎng)時(shí),linux安裝python缺少依賴,導(dǎo)致腳本無(wú)法正常運(yùn)行。

  2. 需要將各種軟件服務(wù)區(qū)分開,可以將軟件單獨(dú)放在不同的容器里進(jìn)行運(yùn)行,具體可以運(yùn)行哪些軟件,自行了解。

  3. 他人分享的docker鏡像,部署到自己的云服務(wù)器上運(yùn)行。


因?yàn)樽罱玫搅诉@個(gè),感覺是比較實(shí)用的,網(wǎng)上搜了很多問(wèn)題才弄好的,寫個(gè)東西,總結(jié)一下,只是自己摸索的操作過(guò)程。



一、安裝

docker先裝在windows上運(yùn)行,做好鏡像后再部署到linux上運(yùn)行就行。

docker官網(wǎng)下載地址:https://www.docker.com/products/docker-desktop/

1.????需要注意的是要先打開windows的兩個(gè)功能,進(jìn)入方法:

控制面板——程序——啟用或關(guān)閉windows功能


1.1????開啟Hyper-V

開啟Hyper-V

1.2????開啟適用于Linux的Windows子系統(tǒng)

開啟適用于Linux的Windows子系統(tǒng)

2.????直接運(yùn)行從官網(wǎng)下載的安裝進(jìn)行運(yùn)行

提示:docker默認(rèn)安裝在C盤,請(qǐng)不要隨意移動(dòng)docker軟件目錄的位置,可能導(dǎo)致報(bào)錯(cuò),無(wú)法正常使用。

安裝完成后,彈出提示缺失WSL 2,可以自行點(diǎn)擊圖上鏈接進(jìn)行安裝,或者點(diǎn)擊下面鏈接直接下載。

https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

安裝完后提示缺失WSL 2,請(qǐng)自行下載安裝

3.????安裝完成后啟動(dòng)軟件,修改一下配置,將鏡像安裝移到其他盤進(jìn)行,不然C盤很容易爆炸。

軟件需要登錄使用,點(diǎn)擊這里注冊(cè)賬號(hào)登錄
登錄完成后,點(diǎn)擊設(shè)置
關(guān)掉使用WSL 2
修改這里目錄(填需要安裝鏡像容器的目錄),上面是容器配置,自行搜索了解,可以不更改
正常啟動(dòng)后,右下角小鯨魚會(huì)是綠色,其他顏色都是不正常的

這樣操作完后,安裝就完成了,是不是很簡(jiǎn)單。

二、拉取鏡像,并配置容器

第二節(jié)需要做的操作就有點(diǎn)多了,不過(guò)也不難(請(qǐng)先看下面1.5的提示,配置鏡像源)

1.????拉取鏡像hello-world

1.1????Win+R運(yùn)行cmd,輸入docker

輸入docker,看到輸出以下內(nèi)容就是正常了


1.2????輸入docker pull hello-world,拉取一個(gè)名叫hello-world的鏡像

輸入docker pull hello-world,看到輸出以下內(nèi)容就是正常了

1.3????拉取鏡像成功后,docker軟件上回看到名叫hello-world的鏡像,真是萬(wàn)物從hello world起了。

拉取hello-world鏡像成功后顯示

1.4????真正要用的不是hello-world這個(gè)鏡像,只是用來(lái)驗(yàn)證軟件是否正常安裝,將hello-world換成centos(或者ubuntu),再試一下這個(gè)命令。

我這里是之前安裝過(guò)了,所以提示這個(gè),如果拉取hello-world鏡像沒(méi)問(wèn)題,這個(gè)centos鏡像也不會(huì)有問(wèn)題
成功后可以看到centos的鏡像


1.5????提示:如果拉取鏡像,下載失敗,或者無(wú)法正常下載,請(qǐng)配置一下docker鏡像源

打開設(shè)置,加上阿里云鏡像源

阿里云的鏡像源需要登錄阿里云官網(wǎng)(https://account.aliyun.com/login/login.htm),登錄之后就可以看到下圖。

這里使用的是windows版本的,所以只看windows的即可

2.????運(yùn)行容器

2.1? ? 找到鏡像頁(yè)面,點(diǎn)擊運(yùn)行鏡像則自動(dòng)會(huì)生成一個(gè)對(duì)應(yīng)鏡像的容器

點(diǎn)擊?運(yùn)行鏡像
生成了hello-world的容器

2.2? ? 選擇centos的鏡像容器進(jìn)行運(yùn)行

點(diǎn)擊?啟動(dòng)容器
點(diǎn)擊上圖的容器名稱,可以進(jìn)入容器命令行操作(需要簡(jiǎn)單的linux基礎(chǔ))

運(yùn)行容器也可以使用命令進(jìn)行,下面命令會(huì)運(yùn)行一個(gè)新的centos鏡像的容器


3.? ? 打包鏡像

一般在容器的linux中安裝自己需要的服務(wù)或軟件后,就可以將容器打包成鏡像,此時(shí)需要在windows命令行操作

my_container是容器名,替換成你想打包的容器

my_image是鏡像名,可自己定義

將容器打包成鏡像

將容器打包成鏡像后,鏡像會(huì)存放在運(yùn)行docker commit時(shí)的目錄,如上圖,打包的鏡像存放在C:\Users\admin目錄下。

三、部署

  1. ? ? 在服務(wù)器上安裝docker服務(wù)

沒(méi)有網(wǎng)絡(luò)環(huán)境情況下,還是通過(guò)上傳rmp包瀨進(jìn)行安裝

docker下載地址:https://download.docker.com/linux/static/stable/

選擇自己需要的版本,ce版本是社區(qū)版本(免費(fèi)),ee版本是商業(yè)版本(付費(fèi))。

下載完后才能后上傳到服務(wù)器上進(jìn)行解壓


1.1? ??解壓完成后,二進(jìn)制文件移動(dòng)到可執(zhí)行文件上的目錄路徑


1.2? ??進(jìn)入/etc/systemd/system/


1.3? ??新建一個(gè)名為docker.service的文件,這里直接使用vi命令創(chuàng)建,然后將藍(lán)色字體粘貼到文件中保存

[Unit]

Description=Docker Application Container Engine

Documentation=https://docs.docker.com

After=network-online.target firewalld.service

Wants=network-online.target

??

[Service]

Type=notify

# the default is not to use systemd for cgroups because the delegate issues still

# exists and systemd currently does not support the cgroup feature set required

# for containers run by docker

ExecStart=/usr/bin/dockerd --selinux-enabled=false

ExecReload=/bin/kill -s HUP $MAINPID

# Having non-zero Limit*s causes performance problems due to accounting overhead

# in the kernel. We recommend using cgroups to do container-local accounting.

LimitNOFILE=infinity

LimitNPROC=infinity

LimitCORE=infinity

# Uncomment TasksMax if your systemd version supports it.

# Only systemd 226 and above support this version.

#TasksMax=infinity

TimeoutStartSec=0

# set delegate yes so that systemd does not reset the cgroups of docker containers

Delegate=yes

# kill only the docker process, not all processes in the cgroup

KillMode=process

# restart the docker process if it exits prematurely

Restart=on-failure

StartLimitBurst=3

StartLimitInterval=60s

??

[Install]

WantedBy=multi-user.target


1.4? ??給docker.service文件添加權(quán)限


1.5? ??重新加載配置文件(每次有修改docker.service文件時(shí)都要重新加載下)


1.6? ? 測(cè)試docker服務(wù)是否正常安裝

測(cè)試docker服務(wù)安裝是否成功



2.? ? ?將之前自己打包的鏡像文件上傳到服務(wù)器上,然后使用docker運(yùn)行鏡像生成容器。

找到上傳到服務(wù)器鏡像文件,使用docker命令運(yùn)行鏡像

modelrun_py是鏡像名

awesome_hofstadter是容器名,可自定義


成功運(yùn)行后,可以使用docker ps 查看容器運(yùn)行狀況

docker ps 查看容器運(yùn)行狀況


2.1? ? 如果需要使用容器內(nèi)程序與宿主機(jī)進(jìn)行服務(wù)交互,需要設(shè)置端口映射,為了能夠方便容器與宿主機(jī)進(jìn)行文件操作,可以進(jìn)行目錄掛載,可使用如下命令進(jìn)行啟動(dòng)鏡像

使用鏡像 nginx:latest,以后臺(tái)模式啟動(dòng)一個(gè)容器,將容器的 80 端口映射到主機(jī)的 80 端口,主機(jī)的目錄 /data 映射到容器的 /data


2.2? ? 進(jìn)入容器以及退出容器且不關(guān)閉容器,保持后臺(tái)運(yùn)行

進(jìn)入容器,此命令需要連接到正在運(yùn)行中的容器,如果容器未正在運(yùn)行,可運(yùn)行后再試

2faeb0e93f2f是容器id,根據(jù)自己本地環(huán)境修改

docker attach 后面接容器id,就可以進(jìn)入容器,成功進(jìn)入后可看到linux主機(jī)名和目錄發(fā)生了變化

退出容器且不關(guān)閉容器,保持容器后臺(tái)運(yùn)行

按下鍵盤ctrl +?P + Q



2.3? ? 也可以使用docker?exec命令,

-it后面接容器id

使用exit進(jìn)行退出

可以看到退出容器后,容器還在運(yùn)行

如果對(duì)你有所幫助,會(huì)讓我感覺到快樂(lè),使用遇到問(wèn)題,可以留下評(píng)論,也可私信。


Docker鏡像容器安裝與使用的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
盈江县| 文成县| 米泉市| 美姑县| 工布江达县| 昌黎县| 大同县| 唐山市| 夏河县| 马关县| 武胜县| 东明县| 天台县| 开鲁县| 林芝县| 方城县| 丹东市| 武山县| 兴文县| 渑池县| 兰西县| 陈巴尔虎旗| 渝北区| 肥西县| 五家渠市| 东兰县| 邵武市| 资讯 | 宿松县| 鸡泽县| 郁南县| 偏关县| 翁源县| 清原| 滁州市| 卓尼县| 虎林市| 陆河县| 凉山| 灯塔市| 柘城县|