Dockerfile构建python项目
一、步骤
- 1、镜像基础
- 2、复制代码
- 3、设置工作目录
- 4、把需要执行的shell命令编写成脚本文件
- 5、配置容器启动自动执行脚本,CMD在docker run时运行脚本
DockerFile 脚本
# 基于镜像基础
FROM python:3.7.9
# 复制⽂件到容器中
COPY ./src /app
# 工作目录
WORKDIR /app
RUN 安装脚本.sh
CMD 启动脚本.sh
- 实例
FROM python:3.7.9
COPY fastapi /fastapi
WORKDIR /fastapi
RUN sh scripts/install.sh
CMD sh scripts/start.sh
- docker-compose.yml 文件
version: '3.3'
services:
test:
build:
context: ./
dockerfile: Dockerfile
image: test
container_name: test
ports:
- 8000:8000
构建
# 进入到dockerfile文件目录下、执行命令
docker build -t image
# sudo docker build -t test:lasttest .
启动
sudo docker run -it -p 8000:8000 777da9ace27e
# -p 镜像端口
# 镜像名:777da9ace27e
删除镜像
- 1、查看所有的容器(CONTAINER ID )和(IMAGE)
sudo docker ps -a
- 2、停止container
sudo docker stop c30e9a5789b2
# CONTAINER ID =c30e9a5789b2
- 3、删除container和image
sudo docker rm c30e9a5789b2
# CONTAINER ID =c30e9a5789b2
sudo docker rmi f5b487c66c5e
# image = f5b487c66c5e
- 4、进入容器内部
sudo docker attach 容器id或者容器名
sudo exec -it 容器id或者容器名 bash
Dockerfile构建python项目的更多相关文章
- 用Buildout来构建Python项目
用Buildout来构建Python项目 什么是Buildout (Remixed by Matt Hamilton, original from http://xkcd.com/303) Bui ...
- 【Jenkins】jenkins构建python项目提示:'python' 不是内部或外部命令,也不是可运行的程序或批处理文件
一.问题:jenkins构建python项目提示:'python' 不是内部或外部命令,也不是可运行的程序或批处理文件 二.原因:要在jenkins配置本地环境变量 三.解决方案:添加python.e ...
- Jenkins构建Python项目提示:'python' 不是内部或外部命令,也不是可运行的程序
问题描述: jenkin集成python项目,立即构建后,发现未执行成功,查看Console Output 提示:'Python' 不是内部或外部命令,也不是可运行的程序,如下图: 1.在 Windo ...
- Docker:dockerfile构建php项目 [八]
一.把项目封装成docker镜像的步骤 把项目封装成docker镜像的步骤: 1.先运行一个基础容器,手动制作docker镜像 2.编写dockerfile,构建镜像 3.测试运行 二.dockerf ...
- Jenkins构建Python项目失败
Console Output 提示:'Python' 不是内部或外部命令,也不是可运行的程序 定位原因:python.exe 不在jenkins执行用户的PATH里面 解决:构建的时候Python命 ...
- jenkins构建python项目时,提示python不是内部或外部命令的解决办法
1.回到 Jenkins 首页,点击 “构建执行状态”或“Build Executor Status” ,右则会列出本机信息. 完美解决!!!
- Docker如何部署Python项目
Docker 部署Python项目 作者:白宁超 2019年5月24日09:09:00 导读: 软件开发最大的麻烦事之一就是环境配置,操作系统设置,各种库和组件的安装.只有它们都正确,软件才能运行.如 ...
- 笔记14:Docker 部署Python项目
Docker 部署Python项目 导读: 软件开发最大的麻烦事之一就是环境配置,操作系统设置,各种库和组件的安装.只有它们都正确,软件才能运行.如果从一种操作系统里面运行另一种操作系统,通常我们采取 ...
- GitHub Python项目推荐|瓦力Devops开源项目代码部署平台持续部署
GitHub Python项目推荐|walle - 瓦力 Devops开源项目代码部署平台 项目热度 标星(star):8418 (很不错的实用项目,大神作品,建议关注) 标星趋势 关注(watch) ...
- 使用docker 部署python 项目
使用python 开发了一个restfu api程序,使用docker镜像部署.主要有如下步骤,简单记录以供以后参考. 1. 创建DockerFile文件 创建一个DockerFile文件,文件名为D ...
随机推荐
- VSCode编辑器极简使用入门
VSCode(Visual Studio Code)是一款开源.跨平台.轻量级的代码编辑器,具有非常丰富的插件生态.他本身就是JavaScript + Electron ( /ɪˈlektrɒn/电子 ...
- [数据与分析可视化] D3入门教程1-d3基础知识
d3.js入门教程1-d3基础知识 文章目录 d3.js入门教程1-d3基础知识 1 HTML介绍 1.1 什么是HTML? 1.2 自定义文档样式CSS 1.3 构建svg图形 2 d3绘图入门 2 ...
- ArcObjects SDK开发 025 AO中对象的序列化和反序列化
在ArcObjects SDK,序列化接口是IPersistStream,该接口的定义如下. 其中GetClassID函数可以获取实际类型的唯一ID,Load函数是反序列化函数,Save函数为序列化函 ...
- ArcGIS工具 - 导出空数据库
有时,需要根据已有的成果数据创建一个空的数据库模板文件,用于新的编辑或对外发布.那么,如果又快又好的创建呢?为源GIS为您编写了一个导出空数据库工具,它可以实现"一键"快速导出任意 ...
- P7914 [CSP-S 2021] 括号序列
简要题意 给定 \(k\),定义 "超级括号序列"(简称括号序列,下同) 字符串为: 仅由 ( ) * 三种字符组成. 下面令 \(S\) 为不超过 \(k\) 个 \(\ast\ ...
- 8KB的C#贪吃蛇游戏热点答疑和.NET7版本
在之前的一篇文章<看我是如何用C#编写一个小于8KB的贪吃蛇游戏>中,介绍了在.NET Core 3.0的环境下如何将贪吃蛇游戏降低到8KB.不过也有很多小伙伴提出了一些疑问和看法,主要是 ...
- 狂神的springboot课程员工管理系统
文章目录 springboot-kuangshen 介绍 功能展示 登陆页面 首页 员工管理页面 添加员工信息 删除员工信息 修改员工信息 参考资料 springboot-kuangshen 介绍 狂 ...
- three.js实现分模块添加梦幻bloom辉光光晕方案--详细注释版本~~方案三版本~~
先上图对比方案1-2-3不同点,本文是方案3 方案1(旋转场景情况下发光体不应该遮住另一个,但是遮住了) 方案2(层次正常,发光正常) 方案3(层次正常,发光正常,但是转动场景时候部分辉光会被遮挡,但 ...
- DateFormat类&SimpleDateFrormat类介绍-Dateformat类的format方法parse方法
DateFormat类&SimpleDateFrormat类介绍 java.text.DateFormat是日期/时间格式化子类的抽象类,我们通过这个类可以帮我们完成日期和文本之间的转换,也就 ...
- 聊一聊js中元素定位的方法
在做selenium web自动化的时候,有时通过selenium定位不到,或无法操作元素,这个时候就需要通过js来 定位/操作元素,然后通过selenium自带的execute_script()方法 ...