Centos下打包python程序为docker镜像

(1)准备py程序test.py文件;

(2)拷贝程序到docker目录

    将test.py文件(工程目录)拷贝到linux系统,如工程名为:microservice,将所有工程文件拷贝到linux下workspace文件夹下(注意:所有代码文件放在microservice/package文件夹下,方便生成requirements.txt文件,microservice为工程名称),后面还需配置Dockerfile文件和requirements.txt即可生成镜像;

(3)配置Dockerfile(无扩展名)

新建Dockerfile文件,内容如下:

#基于的基础镜像

FROM python:3.6

 

#microservice (工程代码文件夹)文件夹添加到容器code文件夹

ADD ./microservice /code

 

# 设置code文件夹是工作目录

WORKDIR /code

 

# 安装支持,requirements由以下产生:跳转到package的同级目录执行以下命令:pip freeze > requirements.txt

# 自动生成的requirements往往很大,可以手动删除一些不相关的

RUN pip install -r requirements.txt

 

#启动时指定py_microservice_qxt20190521.py

CMD ["python", "/code/package/py_microservice_qxt20190521.py"]

(4)新建运行环境依赖文件requirements.txt

Cd跳转到package同级目录运行以下命令在当前目录生成requirements.txt

文件:

pip freeze > requirements.txt

注意:自动生成的需要环境可能很大,可以手动删除一些不需要的。

(5)创建镜像

Cd 跳转到microservice 目录(Dockerfile文件的同级目录)

执行命令:docker build -t microservice_img .

其中:microservice_img 为创建的镜像名称,. 表示当前目录(microservice)

(6)查看镜像是否创建成功

执行命令:docker images

docker images -a

(7)在容器中运行镜像

新建一个容器,如test,在新建test容器中运行microservice_img镜像,代码如下:

docker run -it -p 8899:8899 --name test microservice_img

-it:表示交互式终端的容器,非启动后立刻结束的容器

-p 8899 :8899 :前面为8899为docker的端口,映射到Linux虚拟机的8899 端口

--name test:给容器取个名字,嫌麻烦可以省去

microservice_img:容器是用哪个镜像启动的(一个容器,必须依赖一个镜像启动)

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CentOS上使用Docker打包Django的过程如下: 首先,确保已在CentOS系统上安装了Docker,可以通过运行以下命令进行检查: ``` docker -v ``` 如果没有安装Docker,请根据CentOS版本选择合适的安装方法。一般来说,可以通过运行以下命令进行安装: ``` yum install docker ``` 安装完成后,确保Docker服务已启动,可以通过运行以下命令来启动Docker服务: ``` systemctl start docker ``` 然后,在CentOS的工作目录中创建一个新的Django项目,可以使用以下命令: ``` django-admin startproject myproject ``` 进入项目目录: ``` cd myproject ``` 下一步是创建一个Dockerfile,以指定Django项目的构建和运行环境。在项目目录中创建一个名为"Dockerfile"(无文件扩展名)的文件,内容如下: ``` # 使用Docker官方提供的Python基础镜像 FROM python:3 # 将项目目录复制到容器中的/app目录 COPY . /app # 设置工作目录为/app WORKDIR /app # 安装项目所需的依赖项 RUN pip install -r requirements.txt # 暴露Django运行时使用的端口号(默认为8000) EXPOSE 8000 # 启动Django应用程序 CMD python manage.py runserver 0.0.0.0:8000 ``` 接下来,在项目目录中创建一个名为"requirements.txt"的文件,并指定Django以及其他项目所需的所有依赖项,例如: ``` Django==3.2.8 ``` 确保已经安装了Docker Compose,可以使用以下命令来检查: ``` docker-compose -v ``` 如果没有安装Docker Compose,请根据CentOS版本选择合适的安装方法。 最后,使用Docker Compose构建和运行Docker容器。在项目目录中创建一个名为"docker-compose.yml"的文件,内容如下: ``` version: '3' services: app: build: . ports: - "8000:8000" ``` 运行以下命令以构建和运行Docker容器: ``` docker-compose up ``` Docker将根据Dockerfile指定的配置构建镜像,并在指定的端口上运行Django应用程序。您可以通过访问http://localhost:8000来访问部署的Django应用程序
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值