主要目標:把基于PyCharm編寫程序,使用docker部署運行。
這次技術(shù)博客原創(chuàng)主要是部署流程,原創(chuàng)東西很少,參照幾篇技術(shù)博客,梳理了流程,使部署流程更簡單易懂、更便于操作。
前提條件已安裝docker。
主要分為四步:
一、準備創(chuàng)建docker鏡像所需要文檔結(jié)構(gòu):
創(chuàng)建XXimg文件夾,再在其中創(chuàng)建XX文件夾(用來存放程序及配置文檔)和Dockerfile文件(用于構(gòu)建鏡像),最后在XX文件夾中創(chuàng)建package文件夾(用于存放程序)和requirements.txt(運行工程所需要的環(huán)境列表)。
二、生產(chǎn)中間文件:
1、Dockerfile文件內(nèi)容格式如下:
# 基于鏡像基礎(chǔ)
FROM python:3.6
# 維護者信息
MAINTAINER name huaye6018
# 復(fù)制當(dāng)前代碼文件到容器中 /app
ADD . /app
# 設(shè)置app文件夾是工作目錄 /app
WORKDIR /app
# 安裝所需的包,默認為使用python官方鏡像源,安裝 比較慢
#RUN pip install -r requirements.txt
#可以修改為清華源
RUN pip install -r app/xx/requirements.txt - i https://pypi.tuna.tsinghua.edu.cn/simple
# Run server.py when the container launches
CMD ["python", "/app/xx/server.py"]
2、生成鏡像文件準備文件,在開發(fā)電腦上項目目錄下(pycharm 終端下)進入終端執(zhí)行命令:
pip freeze > requirements.txt 或者(pip install pipreqs)
三、上傳Linux系統(tǒng):
1、將XXimg壓縮包上傳Linux系統(tǒng),解壓文件(unzip),進入相應(yīng)目錄。
2、創(chuàng)建鏡像命令:docker build -t docker_xximg .,docker_xximg為鏡像名稱; “.”代表當(dāng)前目錄,容易忘記。
3、查看鏡像命令:docker images。
4、運行鏡像,生成并啟動容器命令:docker run -it -p 端口:端口 --name 容器名 docker_xximg。
四、測試訪問:
IP:端口
常用命令:
查看安裝的docker:yum list installed | grep docker。
退出容器又不關(guān)閉容器:Ctrl + P + Q。
進入容器:docker exec -it 容器ID /bin/bash (docker attach 容器ID)。
退出容器且關(guān)閉容器:ctrl+d 。
查看容器:docker ps -a。
查看鏡像:docker images。
刪除容器:docker rm 容器ID。
刪除鏡像:docker rmi 鏡像ID/鏡像名。
docker inspect 容器ID:返回一個Json文件記錄Docker容器的配置和狀態(tài)信息。
將容器導(dǎo)出到容器的鏡像文件 : docker export 容器ID > update.tar。
用容器的鏡像文件創(chuàng)建一個新靜像:docker import - 鏡像名 < update.tar。
創(chuàng)建完成之后,生成并啟動鏡像的容器:docker run -it 鏡像名。
鏡像導(dǎo)出:tar鏡像包可以拷貝到其他機器docker環(huán)境中加載命令: docker save xximg -o XX.tar。
鏡像加載:docker load -i XX.tar。
參考文獻:
Docker 教程
Centos6.5下安裝docker
將python項目部署到docker
docker如何部署python項目_在docker中部署Python項目,Docker
Docker部署python項目步驟及常用命令