docker 镜像启动并完成服务部署
本文为部署Python的Flask框架开发的服务,使用flask+uWSGI+Nginx方式,因部署之后post上传文件报错,去掉了Nginx方式,此服务只有一台主机,访问量很少。
部署flask+uWSGI+Nginx方式参考大神的文章:用Docker部署flask+uWSGI+Nginx_夏夏夏夏的博客-CSDN博客_docker flask uwsgi
此文章启动的前提:docker环境已安装完成,镜像已save完成
1. 首先导入使用 docker save 命令导出的镜像centos_docker.tar。
$ docker load < centos20190922.tar
2. 查看本机器的镜像
$ docker images
3. 启动某一个镜像并进入。flask镜像名称,v1.0为版本号
$ docker run -it flask:v1.0 /bin/bash
4. 进入docker容器中需要生成启动的.sh文件,此步骤应在打包时生成。因为我没在打包时生成.sh文件,需新建.sh的启动文件。文件内容为(根据部署服务启动命令自定义):
source /etc/profile
cd /root/flask_test
uwsgi --ini uwsgi.ini
tail -f /dev/null
编写完成.sh文件后,测试启动一下是否能正常运行,启动文件命令:sh 文件名
5.在容器外面将容器提交保存为镜像
$ docker commit docker_flask docker_flask:v2.1
docker_flask参数为使用docker ps -a 命令查看的names名称;
docker_flask:v2.1参数为提交后的名称,:后为版本号
6.定义一个Dockerfile的文件,文件内容如下:
FROM docker_flask:v2.1
ENTRYPOINT sh /root/XXX.sh
EXPOSE 9011
文件内容说明:第一行引入某个docker的名字和版本;第二行启动docker内的sh文件;第三行docker容器向外暴露的端口
7.然后通过定义的Dockerfile,重新build出新的镜像:
$ docker build -f Dockerfile -t docker_flask:v2.2 .
注意:上述命令最后面有个.
8.启动容器,将容器内的端口映射到宿主机上的端口
$ docker run -d -it -p 9081:9011 --restart always --name docker_flask22 docker_flask:v2.2
9.重新保存镜像
$ docker save -o docker_flask_v22.tar docker_flask:v2.2
10.需给其他机器安装启动时,先导入镜像
$ docker load -i docker_flask_v22.tar
11.参考步骤8 重新启动
docker 镜像启动并完成服务部署相关推荐
- 常用docker镜像启动了解
常用docker镜像启动了解 curl -o /etc/yum.repos.d/docker.repo http://mirrors.aliyun.com/docker-ce/linux/centos ...
- docker 镜像启动报错
docker 镜像启动报错 docker endpoint with name zookeeper already exists in network bridge 1.错误描述 1.启动docker ...
- 我的docker随笔35:jenkins服务部署
本文涉及一种在容器中部署 jenkins 服务的方法,后续将其与 gitlab 配合以实现 CICD 功能.其目的是为了在实际工作中使用代码托管及自动化操作. 一.引言 因工作需要,需部署 jenki ...
- 我的docker随笔34:gitlab服务部署
本文涉及一种在容器中部署 gitlab 服务的方法,并结合其自带的 gitlab-runner 实现 CICD 功能.其目的是为了在实际工作中使用代码托管及自动化操作. 一.引言 因工作需要,需部署 ...
- docker镜像启动后端口号是多少_java项目docker云化入门
01 创建java项目 从spring官网快速开始找一份样例代码即可,代码样例如下: 1.指定pom父文件和依赖 <parent><groupId>org.springfram ...
- docker镜像启动后端口号是多少_RSS、智能家居、个人博客、维基百科……Docker 入门指南...
如果你购买过 VPS 云主机,那么或多或少,你都可能听说过 Docker.如果你从未听说过 Docker,那么本文可能能够为你开启新世界. 利用 Docker,你能够非常轻松地部署各类服务,无论是个人 ...
- 打包docker镜像,推送远程服务器,部署到k8s步骤
打包docker镜像 前提条件 1.docker服务器已开启远程访问,参考<远程docker服务器携带证书连接>. 2.服务器上已经搭建好k8s集群,本文是k8s单点集群用于测试. 在之前 ...
- docker镜像启动后端口号是多少_初识Docker
点击上方"TestOps" 订阅 本周TestOps免费试听课课程表 时间 主题 7.23(周二)14:00 Selenium环境搭建与原理 7.24(周三)20:00 Docke ...
- docker镜像原理基础与dockerfile部署springboot项目
一.docker镜像原理 1.操作系统组成部分 进程调度子系统 进程通信子系统 内存管理子系统 设备管理子系统 文件管理子系统 网络通信子系统 作业控制子系统 Linux文件系统由bootfs和roo ...
最新文章
- android mediaplayer状态机
- WISMO模块GPRS上网设置的过程
- 轻松记账工程冲刺第二阶段10
- flutter scrollview_简单易上手的Flutter学习指南App,2020一起来玩转Flutter吧~
- liferay 几个工具类
- java 静态变量 new_java中静态对象和普通变量在初始化静态变量的时候有什么区别??高手!!...
- 【2017年第3期】面向共享的政府大数据质量标准化问题研究
- android中自定义RadioButton
- requests-处理不信任的ssl证书
- 电路——三极管(一)辨认极性和判断类型(原理图中)
- 宝塔Warning: require(): open_basedir restriction in effect
- python以追加方式打开文件 线程安全吗_Python多线程同步---文件读写控制方法
- c语言math库正弦余弦函数
- 基于FPGA的自动售货机设计(EDA课程设计)(湖南科技大学)
- 用oracle 11g bbed copy替换同一个表数据块block为另一个数据块之系列八
- 你知道如何从零开始学c++游戏编程吗
- java 自动登录_java代码实现自动登录功能
- 概率论与数理统计 4 Continuous Random Variables and Probability Distributions(连续随机变量与概率分布)(上篇)
- yudian温控表a1温度怎么补偿_厦门宇电yudian温控表AI-516/516P型人工智能温度调节器控制器-恩莱自动化官网...
- matalb读取txt文件以及将数据写入txt文件