docker服务器运维
使用docker的目的:避免python环境被污染,也避免本项目的包版本影响其他服务。起到隔离的作用。
以python docker为例
目录结构:
your—project/
|---- app/
|---- main.py
|---- requirements.txt
|---- data/
|---- logs/
|---- deploy/
|---- dockerfile
docker build时的目录 your—project/
目的制作新镜像,避免每次重复安装python package,持久化data和logs文件避免文件丢失 国内的镜像建议在轩辕上下载
一、创建dockerfile
#从哪个镜像基础上制作新镜像
from your_image:tag1
#设置环境
ENV LOG_DIR=/app/logs
ENV DATA_DIR=/app/data
#设置python的源为阿里云
run pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
run pip config set install.trusted-host mirrors.aliyun.com
#创建docker内的目录
run mkdir -p $DATA_DIR $LOG_DIR
#切换工作目录
WORKDIR /app
#声明持久化
VOLUME ["/app/data","/app/logs"] COPY ./app/ .
COPY requirements.txt
run pip install --no-cache-dir -r requirements.txt
CMD ["python","main.py"]
二、制作镜像
docker build -t my_image_name:tag_version -f ./deploy/dockerfile .
执行完后,使用images命令显示已经创建好的镜像
docker images docker rmi my_image_name:tag_version #可以删除这个镜像 docker rmi id123 # ID的前3个字母 删除镜像
三、创建容器
docker build --name my_container_name --add-host=host.docker.internal:host-gateway -v ./app/data:/app/data -v ./app/logs:/app/logs my_images_name:tag_version
--name 是容器命名
也可以事后改名
docker rename old_container_name new_container_name
显示全部容器
docker ps -a
删除容器
docker rm my_contrainer_name
docker rm 容器的前3个id字母
--add-host 的目的是为了在容器内访问 localhost的时候,能访问到宿主机
-v 是挂载目录 格式 宿主机目录:docker内目录。 避免文件丢失。实际文件存放位置是宿主机目录。docker容器删除后,文件仍然保存着。
四、docker的启动和使用
docker start my_container_name
也可以在cron计划任务里启用
sudo crontab -e
0 2 * * MON-FRI docker start my_container_name
docker服务器运维的更多相关文章
- Docker化运维方式讲解
应用迁移需求 应用运维需要考虑的一个重要问题就是迁移, 在不同机器.机房.环境间迁移.迁移的原因有很多, 比如硬件过保(硬件故障), 机房迁移, 应用扩缩容等. 应用迁移的核心需求是: 简单.迁移操作 ...
- 谈谈我的windows服务器运维管理
我们开发的页游General War(http://gw.gamebox.com)上线运营也有半年多了,服务器的开发到运维基本都由我一手包办,在服务器上线之后我们又招了一个程序员接手后续功能的开发,而 ...
- 线上Linux服务器运维安全策略经验分享
线上Linux服务器运维安全策略经验分享 https://mp.weixin.qq.com/s?__biz=MjM5NTU2MTQwNA==&mid=402022683&idx=1&a ...
- 《DevOps故障排除:Linux服务器运维最佳实践》读书笔记
首先,这本书是Linux.CN赠送的,多谢啦~ http://linux.cn/thread-12733-1-1.html http://linux.cn/thread-12754-1-1.html ...
- 【转载】网站服务器运维记实:阿里云1核2G突发性能t5服务器突然变得卡顿
阿里云突发性能服务器1核2G的t5服务器在高资源利用率的情况下运行一段时间后,发现服务器反应变得很慢,通过windows远程桌面连接上服务器后查看到CPU性能一直在90%到100%之间,无法降下来.前 ...
- Linux服务器运维安全策略经验分享
http://jxtm.jzu.cn/?p=3692 大家好,我是南非蚂蚁,今天跟大家分享的主题是:线上Linux服务器运维安全策略经验.安全是IT行业一个老生常谈的话题了,从之前的“棱镜门”事件中折 ...
- 工作中常用Linux命令--服务器运维
工作中常用Linux命令--服务器运维 lsof查看端口使用情况 lsof -i:8080更多lsof命令使用说明:http://www.cnblogs.com/peida/archive/2013/ ...
- 【微学堂】线上Linux服务器运维安全策略经验分享
技术转载:https://mp.weixin.qq.com/s?__biz=MjM5NTU2MTQwNA==&mid=402022683&idx=1&sn=6d403ab4 ...
- CentOS服务器运维监控Nagios(一)
CentOS下搭建Nagios 王尚 2014.11.09 操作系统:CentOS-6.5-i386-bin-DVD1.iso 安装在VM中进行测试的. 本章需要的软件链接: php-5.3.2.ta ...
- 谈linux服务器运维需要掌握的技能
一.linux基础 包括对Linux整体的理解/使用和基本命令 二.运维的命令 运维相关的工具(命令) 三.基础服务 LAMP或LNMP :Apache/Nginx,MySQL,PHP/Python/ ...
随机推荐
- java 两个对象copy,并移除或添加一些属性
前言 目前遇到了 后端查到的数据和我想给前端返回的数据 不太一致的困惑. 因为不想因为返回给前端少一个字段,我这边就用不成了select *. 所以听了@朱杰 大佬的建议,这样搞. 其实这样我也不满意 ...
- 本地代理之Charles使用
简介Charles是一款网络监测工具,还能将线上的资源代理(偷梁换柱)成本地的资源,再有时候不方便发版或修改源代码的时候,这一招倒是挺方便的 下载与安装官网地址:www.charlesproxy.co ...
- 前端开发系列026-基础篇之Canvas绘图(曲线)
本文将介绍Canvas中的弧度.曲线.圆弧以及文字的绘制方法以及径向渐变等内容,并提供饼状图等综合案例. 一.Canvas中的弧度.曲线和圆弧 专业术语 夹角 从一个点发射(延伸)出两条线段,两条线相 ...
- Django+Celery 进阶:Celery可视化监控与排错
一.Celery 命令行工具 Celery 命令行工具可用去查看Celery的运行状态.打开一个终端窗口,进入项目目录(与manage.py同级),运行以下命令 列出集群中在线的Celery Work ...
- 日事清|管理驾驶舱,公司高管、PM必备观察工具
场景介绍 01:一键切换「驾驶舱」高管视图 ● 驾驶舱适配办公室大屏.项目例会投屏展示.管理层统一回顾等场景: ● 每分钟自动更新数据,确保您看到的永远是最新的进度与状态: ● 今日在线人数.本周完成 ...
- 2条流程解决数据同步到全球部署的N个数据库
1.数据同步需求 自动识别源表中数据所归属的分公司进行自动同步,即将源表中A分公司的数据同步到A公司数据库表,源表中B分公司的数据同步到B公司数据库表,以此类推. 2.实现思路 一般ETL工具实现思路 ...
- lvs搭建LB
一.LVS介绍 中国人发明的 1.工作模式 1.nat模式 网站服务器是私网的 2.DR模式 lvs服务器提供一个调度的功能 客户端发送个lvs服务器,然后将请求分发给后台服务器 然后后台服务器直接回 ...
- 手把手搭建 Astro + Github Pages + Github Actions
项目源地址:saicaca fuwari 我实现的效果:https://bxgldh.github.io/ 挑模板挑了很久,个人认为原博主的这个模板非常好看O(∩_∩)O. 但是由于我是小白,在上手初 ...
- Caused by: java.sql.SQLSyntaxErrorException: Unknown column 'name' in 'field list'
写代码做单元测试的时候,突然提示" Caused by: java.sql.SQLSyntaxErrorException: Unknown column 'user_name' in 'f ...
- Grafield++安装(Ubuntu25.04)
Grafield++安装(Ubuntu25.04) 1.简介 Garfield++是一款基于气体和半导体电离测量的粒子探测器详细模拟工具包.目前主要应用领域是微图案气体探测器.Garfield++ 与 ...