0 引言

在linux系统部署Python应用需要安装较多依赖,在内网环境下十分繁琐,而且有时候还需要在其他服务器运行,则需要重复搭建环境和部署应用,因此本文介绍利用docker容器技术来部署。鉴于本文对知识点介绍不多,适合对docker有基础的同学阅读。

docker图标

1 环境介绍

192.168.1.100 Centos7 能连外网

192.168.1.200 Centos7 内网

需要部署的应用目录为guanxi,运行的python文件为run.py

需要运行的文件

两台机器分别安装docker,从rpm库下载docker-ce-xxx.rpm包。通过WINSCP(文件传输工具)将rpm包放到一个文件下。rpm库链接为:https://download.docker.com/linux/centos/7/x86_64/stable/Packages/

rpm库

yum install /path/to/package.rpm -y #外网安装

rpm -ivh docker-ce-xxx.rpm --force --nodeps #内网忽略依赖强制安装。

systemctl enable docker #设置开机自启动

systemctl start docker #启动docker

2 构建镜像

在外网机器执行:

mkdir -p /home/cgt/docker-python && cd /home/cgt/docker-python

vim Dockerfile

FROM ubuntu

MAINTAINER CGT-YUAN

ENV LANG C.UTF-8

RUN apt-get update -y &&

apt-get install -y python3-pip python3-dev

mkdir ~/.pip

echo -e "[global]index-url = https://pypi.douban.com/simple/rusted-host = pypi.mirrors.ustc.edu.cn" > ~/.pip/pip.conf

COPY ./guanxi/* /

WORKDIR /

RUN pip3 install -r requirements.txt

ENTRYPOINT [ "python3" ]

CMD [ "run.py" ]

复制的时候主要格式要整齐,如下图示:

Dockerfile内容截图

docker build .

# . 表示当前基于当前目录的dockerfile打包

docker images

#检查镜像

docker save 镜像ID > ./xxx.tar

#打包镜像

使用Winscp工具传输到内网服务器上

docker load < /root/xxx.tar #在内网执行

3 启动容器

在内网机器执行

docker run -d --name xxx -p 主机端口:容器端口 -v /主机目录:/容器目录 --restart=unless-stop 镜像ID

docker ps #查看容器运行

4 一般指令介绍

docker -v #查看docker版本

docker imaes #查看镜像

docker ps #查看正在运行的容器

docker run -d --name xxx -p 主机端口:容器端口 镜像ID 启动容器一般命令

docker stop 容器ID #停止容器

docker rm 容器ID #删除容器

docker rmi 镜像ID #删除镜像

更多命令可输入docker --help

5 结语

通过以上介绍了如何使用docker部署python应用,我是元元,写文章只为巩固自己的知识点和分享所得,文章难免有纰漏,表述也必然不完整,如果看不懂的同学欢迎在下方留言,我看到会及时回复。

centos7 docker端口_使用Docker部署Python应用相关推荐

  1. python docker实战_「docker实战篇」python的docker-docker镜像的创建使用dockerfile(3

    从上篇docker commit学习可以了解到,镜像的定制其实每一层添加的配置和文件,如果把每一层的修改配置,修改文件,都写入脚本,用这个脚本构建定制镜像,无法重复的问题,镜像构建透明性的问题,体积的 ...

  2. docker安装_使用docker在带有SSL的Nginx反向代理后面部署Quarkus或任何基于Java的微服务...

    docker安装 已经有一段时间了,但是根据一位朋友的要求,我将向您展示如何使用docker在Nginx反向代理后面部署Quarkus微服务. 我们会做什么- 我将在centos 8主机上安装dock ...

  3. rancher k8s docker 关系_通过rancher部署k8s过程实战分享

    概述 公司要求把云上一套环境迁移到线下环境.服务以微服务形式运行,在云上用的是cce(K8S的别名),所以移到线下之后,需要自建这些服务.下面分享一下部署过程 一.环境描述 1.两个节点组成一个K8S ...

  4. docker使用_使用Docker正确的姿势

    通过VS Code和Docker扩展成为Docker高级用户. > Photo by Michał Parzuchowski on Unsplash 您可以使用选择的语言来实施服务. 现在,您想 ...

  5. docker初识_初识 docker 搭建自己的开发环境

    换了一台设备,程序猿嘛第一件事肯定是先把开发环境搭建起来,以前为了方便都是搞的集成环境,这次准备下载集成环境的时候,突然想起 docker 这个东西,在下虽然了解一些概念性的东西但一直为曾实践.人嘛, ...

  6. 如何让nginx执行python代码_生产环境部署Python语言代码(django+uwsgi+nginx)

    本文主要向大家介绍了生产环境部署Python语言代码(django+uwsgi+nginx),通过具体的内容向大家展示,希望对大家学习Python语言有所帮助. 基础环境不做介绍,在django开发w ...

  7. docker 网络_初探Docker的网络模式

    xiaohang 一个写不好代码的年轻人 钢铁侠的铁杆粉丝:I am Iron Man! 刚接触Docker的时候,你是否好奇容器之间是怎么通信的呢? 今天我们就一起来认识一下docker的网络吧~ ...

  8. docker初识_初识Docker - 阮少爷的个人空间 - OSCHINA - 中文开源技术交流社区

    Docker是一种容器技术,类似于虚拟机,但是比虚拟机占用资源更少,更容易部署,安全性也有保障. docker基于go语言实现,诞生于2013年,目前来说,是一门新技术. 为什么要使用docker? ...

  9. windows docker 卸载_安装Docker(Docker Toolbox)与Splash库

    想要安装Splash库,先安装Docker. 1.Docker安装 但是面对windows运行环境,大部分的情况来看,需要先安装Docker Toolbox才可以. 我是win10系统,安装了Dock ...

最新文章

  1. 你猜猜typeof (typeof 1) 会返回什么值(类型)?!
  2. opencv相机标定
  3. 20161023 NOIP 模拟赛 T1 解题报告
  4. C/C++中涉及存储方式的关键字:auto,static,register,extern2009-01-22 11:23auto关键字:
  5. 为什么S/4HANA的销售订单创建会触发生产订单的创建 1
  6. Jquery 寻找父、子、兄弟节点
  7. Branch management
  8. php 将前端网页输出成unicdoe编码
  9. 2014递归求解单链表中的平均值(C++,附递归函数思路讲解)
  10. 错误913:未能找到ID为13的数据库。可能该数据库尚未激活,也可能正在转换过程中...
  11. (9)FPGA面试技能提升篇(EPI接口)
  12. window10系统下载软件教程
  13. Python通过SSH下载远程服务器文件
  14. 使用Java的MessageDigest实现MD5加密算法
  15. 电脑一键装机软件哪个好 目前干净的一键重装系统软件推荐
  16. 基于Python获取一些打印机简单信息
  17. 矩阵与拼接屏如何连接之方案详解
  18. 学大伟业 Day 2 培训总结
  19. MacOS 10.15.3 Catalina下编译Android7.1源码
  20. 数据结构(C语言版-朱昌杰、肖建于)第一章 绪论(1)

热门文章

  1. python mockito arg_that_编程高阶用法–开发者高频词汇
  2. java之mybatis之缓存
  3. Series 入门(创建和增删改查)
  4. bootstrap table 服务端分页
  5. nodejs pm2教程(转载)
  6. caffe android lib
  7. 【信息系统项目管理师】第2章-信息系统项目管理基础 知识点详细整理
  8. openssl生成Windows证书
  9. Ubuntu18.04修改主机名和用户名
  10. iOS平台一套完善的Crash Report解决方案