程序员实用工作技能之Docker
Docker 是一个开源的应用容器引擎,基于Go语言并遵从 Apache2.0 协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
# docker常用命令
# 获取镜像:docker pull image_name
# (创建容器)运行镜像:docker run -it image_name /bin/bash
# (创建容器)运行镜像(挂载本地目录test到容器内的/root/test):docker run -it -v /test:/root/test image_name /bin/bash
# 删除镜像:docker image rm image_id
# 进入容器:docker exec -it container_id /bin/bash
# 删除容器 docker rmi container_id/image_id
# 清理docker残余临时文件:docker image prune
# 查看正在运行的docker进程:docker ps
# 查看所有的docker进程:docker ps -a
# 根据标签删除镜像:docker image rm image_name:v1 或者:docker rmi image_name:v
# 根据ID删除镜像: docker image rm image_id 或者:docker rmi image_id
# 根据容器id启动容器:docker start container_id
# 停止容器:docker stop container_id
# 将容器导出为tar文件:docker export -o output_file_name.tar container_id
# 将压缩包中的镜像文件导入镜像库中并重命名,及版本标签:docker import output_file_name.tar new_image_name:v1.0
# 另存镜像并重命名:docker tag new_image_name:v1.0 my_image_name:v2.0
# 将镜像push到局域网的镜像库中:docker push my_image_name:v2.0
# 退出容器并停止:Ctrl+D
# 退出容器,保持容器运行:Ctrl+P+Q
# 将容器保存为镜像:docker commit -a 'autho_name' -m 'image description' container_id image_name:v1.0
# 利用dockerfile构建镜像: docker build --rm --tag docker_name:v1.0 -f /path/Dockerfile .
# 清理删除已经退出的容器:docker container rm $(docker ps -a |grep Exited |awk '{print $1}')
# 本机正在运行的容器:docker container ls
# 删除容器:docker rm -f container_id
# 容器时间和宿主机的时间进行同步
docker run -it -v /etc/localtime:/etc/localtime:ro --restart=always --net=host image_name:version /bin/bash
利用Dockerfile制作Docker镜像
示例
##Dockerfile
FROM base_image_name
COPY etcfile /etcfile
COPY Miniconda3-4.3.31-Linux-x86_64.sh /opt
ENV PATH /opt/miniconda/bin:$PATH
RUN /bin/bash /opt/Miniconda3-4.3.31-Linux-x86_64.sh -b -p /opt/miniconda \
&& echo $PATH && rm -f /opt/Miniconda3-4.3.31-Linux-x86_64.sh \
&& cp /etcfile/sources.list /etc/apt/ && rm -rf /etc/apt/sources.d/* \
&& apt-get update
RUN apt-get -y install gcc g++ nano python-dev libsasl2-dev sasl2-bin \
libsasl2-2 libsasl2-dev libsasl2-modules libsasl2-modules-gssapi-mit krb5-user libkrb5-dev \
&& cp /etcfile/krb5.conf /etc/ \
&& mkdir ~/.pip && cp /etcfile/pip.conf ~/.pip/ \
&& pip install pyhive thrift thrift-sasl hdfs[kerberos]
写好Dockerfile以后执行docker build命令进行镜像的制作,等待几分钟便可以打好镜像,
docker build --rm --tag image_name:v1.0 -f /path/Dockerfile .
程序员实用工作技能之Docker相关推荐
- Java程序员-日常工作技能清单
区别于找工作时的各种八股文整理,自己整理了一些工作半年来觉得一个Java后端程序员在实际工作中需要用到的技能,希望能给刚刚要工作的Java程序员们一点帮助吧. 1.计算机基础 Linux命令:cat. ...
- 计算机本科毕业后还需要参加培训吗?我来聊聊java程序员找工作的经验
很多人在学习完计算机专业后,会发现在找到满意的工作时,还需要参加培训班并花费大量的时间和金钱,这让他们倍感不解.为什么在学习了四年的计算机专业之后,还需要参加培训班呢?难道这四年的时间和精力白费了吗? ...
- 14 | 大师级程序员的工作秘笈
前面我和大家分享了 TDD 的来龙去脉,那些尚未将 TDD 烂熟于胸的同学会分为两个派别.一派是摩拳擦掌,准备动手实践一番:另一派是早就自我修炼过,但实践之路不通.所以,市面上经常会听到有人说,TDD ...
- 好文转载—程序员在工作中会追求什么?
1. 做软件产品.我希望我参与编写的程序成为公司的主要业务.这就排除了 IT 维护工作,因为这种工作只是间接地支持了真正的业务(不管它是什么).我也希望参与系统核心部分的工作,越重要的越好.如果我做的 ...
- 程序员实用小程序_我从阅读《实用程序员》中学到了什么
程序员实用小程序 In short: old but gold. 简而言之:古老而又黄金. Published in 1999, The Pragmatic Programmer is a book ...
- 程序员简历工作模式_简历的完整形式是什么?
程序员简历工作模式 简历:简历 (CV: Curriculum Vitae) The CV is an abbreviation of Curriculum Vitae. It is a writte ...
- Java程序员如何提升技能
Java语言是大学计算机专业中常见的一门编程专业课,自己作为一名程序员,工作还在继续使用,发现大学中学的过于浅显,越来越觉得技能不够用,还需要继续深入学习. Java基本上是目前应用最广,能力最强大的 ...
- “不会SQL,干啥都不行!”资深研发:这是程序员的必备技能!
国外有人曾做过调查显示:"SQL的使用人数仅次于JavaScript". 更有统计,世界上一流的互联网公司中,排名前 20 的有 80% 都是 MySQL 的忠实用户. 你一定很好 ...
- 程序员找工作遇到的“了解、熟悉、精通”的三种技能要求实际上是这样的标准!
本篇文章主要讲解:程序员找工作遇到的"了解.熟悉.精通"的三种技能要求的标准说明. 日期:2021-7-19 作者:任聪聪 编程语言以及技能的了解.熟悉.精通的概念标准: 一.编程 ...
最新文章
- Java调用jar包测试
- 【mysql】[error]group_concat造成的sql语法错误
- 【Java线程】Thread Runnable必知必会
- Java面向对象设计原则
- python抓取网站乱码_如何使用Python抓取网站
- JS 日期转化及日期比较
- php.ini 开启zend,php之ZendFramewor篇(1)application.ini配置说明
- Matlab Tricks(九)—— 矩阵行/列的增广(删除)
- RIPv1配置(Enabling Rip)
- php探针不显示ip,php探针代码_PHP探针获取客户端信息
- 贪心算法之哈夫曼编码问题
- win7计算器左移、右移操作
- 影响力最大化算法——degreediscount以及python实现代码
- 无法在此iPhone上激活Touch ID,怎么解决?
- SwiftUI中sheet弹出嵌在NavigationView中的子视图无法用presentationMode关闭(dismiss)弹出视图的解决
- C语言之strncpy函数
- 第十七届全国大学生智能车竞赛线上比赛直播链接
- NCX SQL编程规范
- Command 模式——读书笔记
- python3 turtle画正方形、矩形、正方体、五角星、奥运五环
热门文章
- Centos7创建DNS服务器(超级简单,一看就会)
- JPEG文件格式介绍
- 华为云数据库mysql云灾备方案_华为云MySQL云灾备解决方案,为企业数据提供全方位的异地保护...
- 台式计算机屏幕扩展,电脑扩展显示器调整的方法
- R语言二项分布(The Binomial Distribution)
- 伯努利分布(二项分布)的假设检验
- DEVC++的几个实用小技巧
- n个元素进栈,有几种出栈方式
- Phonics 自然拼读法 ou ow oi oy au aw oo oo ea Teacher:Lamb
- 【java】统计正数和负数的个数然后计算这些数的平均值