日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

制作Docker鏡像一般有2種方法:

  1. 使用hub倉庫中已有的環境,安裝自己使用的軟件環境后完成image創建
  2. 通過Dockerfile,完成鏡像image的創建

拉取已有鏡像進行改造

十分鐘學會構建自己的Docker鏡像

這部分將介紹以ppocr鏡像為基礎鏡像拉取并改造的過程。

步驟 1:運行 PPOCR 容器

首先,運行 PPOCR 容器。可以使用以下命令:

docker run -itd --name ppocr -p 9000:9000 duolabmeng666/paddlehub_ppocr:1.0 /bin/bash -c "sh /PaddleOCR/start.sh"

這將在本地啟動一個 PPOCR 容器,該容器將在端口 9000 上提供服務。

步驟 2:移動文件到容器

將所需的文件移動到容器內,使用docker cp命令:

docker cp /data/keyword_api.py ppocr:/home

這將就把 keyword_api.py 文件復制到正在運行的 PPOCR 容器的 /home 目錄下。

步驟 3:創建個人鏡像托管實例

因為dockerhub的網絡環境并不友好,我們可以使用阿里云的鏡像空間來代替。可以在容器鏡像服務 (aliyun.com)中創建自己的個人實例,并創建相應的鏡像倉庫。

步驟 4:提交容器鏡像

之后在服務器上登錄到 Docker Registry, 需要使用以下命令:

docker login --username=xxxxxx registry.cn-shanghAI.aliyuncs.com

然后進入到容器中安裝相應的依賴

docker exec -it  container_id /bin/bash

修改完之后,使用以下命令將正在運行的容器保存為鏡像:

docker commit [ImageId] my_saved_image

步驟5:打標簽和推送鏡像

使用以下命令打標簽并將容器鏡像推送到阿里云 Docker Registry:

docker tag [ImageId] registry.cn-shanghai.aliyuncs.com/your_repository/your_image_name:your_image_version
docker push registry.cn-shanghai.aliyuncs.com/your_repository/your_image_name:your_image_version

確保your_repository、your_image_name 和 your_image_version 替換為實際的倉庫、鏡像名稱和版本號。使用的話將容器拉取下來即可。

Dockerfile 文件構建鏡像

如果是希望構建自定義的 Docker 鏡像而不是從已有鏡像中提交容器,可以使用 Dockerfile。以下是一個示例 Dockerfile 的構建步驟:

步驟 1:編寫 Dockerfile 創建一個名為 Dockerfile 的文本文件

FROM registry.cn-shanghai.aliyuncs.com/koudaimao/bigdata_api:v1
設置端口
EXPOSE 8099
切換工作目錄到 /home
WORKDIR /home
安裝系統工具和 cron
RUN apt-get update && apt-get install -y cron
設置環境變量
ENV PATH="/usr/local/Python/ target=_blank class=infotextkey>Python3.7.0/bin:/usr/local/python3.7.0/include:/home/cmake-3.16.0-linux-x86_64/bin:/usr/local/gcc-8.2/bin:/usr/local/nvidia/bin:/usr/local/cuda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/go/bin:/root/gopath/bin" 
CUDA_VERSION=10.2.89 
CUDA_PKG_VERSION=10-2=10.2.89-1 
LD_LIBRARY_PATH="/usr/local/python3.7.0/lib:/usr/local/nvidia/lib:/usr/local/nvidia/lib64" 
NVIDIA_VISIBLE_DEVICES=all 
NVIDIA_DRIVER_CAPABILITIES=compute,utility 
NVIDIA_REQUIRE_CUDA="cuda>=10.2 brand=tesla,driver>=396,driver<397 brand=tesla,driver>=410,driver<411 brand=tesla,driver>=418,driver<419 brand=tesla,driver>=440,driver<441" 
NCCL_VERSION=2.8.3 
LIBRARY_PATH=/usr/local/cuda/lib64/stubs 
CUDNN_VERSION=7.6.5.32 
WITH_GPU=ON 
WITH_AVX=ON 
HOME=/root 
CPLUS_INCLUDE_PATH=/usr/local/python3.7.0/include/python3.7: 
GOROOT=/usr/local/go 
GOPATH=/root/gopath
啟動命令
RUN chmod +x keyword.sh
添加 cron 任務到容器
RUN (crontab -l ; echo "0 23 * * * sh /home/keyword.sh") | crontab
RUN (crontab -l ; echo "10 23 * * * rm -r /home/tmp/*") | crontab
同時運行 Python 代碼和 cron 服務
CMD python3 /home/keyword_and_video_info.py && cron -f

這個 Dockerfile 包括了以下關鍵步驟:

  • 使用基礎鏡像。
  • 設置容器端口和工作目錄。
  • 安裝系統工具和 cron。
  • 設置環境變量,根據你的需求進行適當的配置。
  • 啟動命令,包括給定的 keyword.sh
  • 添加兩個 cron 任務,在每天的晚上11點運行

步驟 2:構建 Docker 鏡像

使用以下命令構建 Docker 鏡像,將上述 Dockerfile 放在與 Dockerfile 同一目錄中:

docker build -t my-container-image .

步驟 3:運行容器

使用以下命令運行容器,同時在后臺執行 Python 代碼和 cron 服務:

docker run -d my-container-image

這樣就創建了一個后臺運行的容器,來定期任務后臺任務。

需要注意的是,如果容器內沒有后臺執行的任務,則運行的容器在創建后的一秒鐘后便會退出,如果沒有后臺任務又不想容器退出的話,可以使用

CMD ["tail", "-f", "/dev/null"]

放到dockerfile的尾部。

分享到:
標簽:Docker
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定