[Linux] - Docker 常用命令
# 运行docker
# -it表示前端运行
docker run -it centos /bin/echo haha # 后端运行并映射80端口
docker run -dt -p : --name mycentos my/os
# 端口映射,IP访问限制
docker run -dt -p 127.0.0.1:: --name mycentos my/os # 不创建Container运行docker
docker run --rm -it centos /bin/echo haha # 创建Container,起个名字
docker run -it --name testecho centos /bin/echo haha # 重命名image
docker tag image_name new_image_name # 运行centos的终端
docker run -it centos /bin/bash # Container重命名
docker rename nginx nginx_1 #------------------------------------------------------------
# 退出
#------------------------------------------------------------
# 在docker的centos终端退出,此退出会停止Container
exit
# 不停止Container情况下退出方法
快捷键:ctrl + p, ctrl + q #------------------------------------------------------------
# 运行Container
#------------------------------------------------------------
# 运行已经退出的docker centos终端
docker start 0a2b06b59448
# 运行并附加到container
docker start -i ContainerID # 停止正在运行的docker centos终端
docker stop 0a2b06b59448 # 附加到docker终端Container,前提是此Container已经运行中
docker attach 3b6165b7504a # 列出所有的Container
docker ps -a # 打印docker的运行终端显示
docker logs 81a4f43c74ed # 删除Container
docker rm 3b6165b7504a # 删除所有Container
docker rm $(docker ps -a) # 列出所有镜像
docker images # 搜索镜像
docker search centos # 下载镜像
docker pull centos # 提交镜像
docker commit mycentos my/os:latest #------------------------------------------------------------
# 镜像导入导出及运行
#------------------------------------------------------------
# 导入容器为镜像文件
docker export 3b6165b7504a > centos.tar # 导入镜像
cat centos.tar | docker import - test/centos:v1. # 运行导入的镜像
docker run -it test/centos:v1. /bin/bash # 删除镜像
docker rmi test/centos:v1. # 查看docker的信息,包括安装路径、CPU、内存等
docker info # Container执行命令,进入容器终端
docker exec -it ContainerID bash
# 进入容器终端
nsenter --mount --uts --ipc --net --pid --target $(docker inspect --format "{{.State.Pid}}" "4cd5af004a52") # 查看Container的端口映射
docker port ContainerID #------------------------------------------------------------
# 动态设置运行时的环境变量
# 使用参数--env
# 查看Container的环境变量方法,可以进入Container的bash中运行命令:env
#------------------------------------------------------------
# 查看Container的环境变量
docker exec -it nginx env
# 查看Container的Host文件
docker exec -it nginx cat /etc/hosts
# 设置Container的环境变量
docker run --rm -it --name test --env MYHOME=/home --env TEST=/home --env PATH=$PATH:/home centos bash
# 也可以使用inspect查看Container的环境变量
docker inspect nginx #------------------------------------------------------------
# 端口映射,IP访问限制
#------------------------------------------------------------
docker run -dt -p 127.0.0.1:: --name jetty img_jetty
docker run -dt -p 127.0.0.1:: --name jetty1 img_jetty
docker run -dt -p : --name nginx --link jetty:java --link jetty1:java1 img_nginx #------------------------------------------------------------
# 镜像保存与重加载
#------------------------------------------------------------
# 保存镜像
docker save img_java > img_java.tar
# 重新加载镜像
docker load < img_java.tar
# 查询镜像历史
docker history img_java
# 查看镜像信息Json
docker inspect img_java #------------------------------------------------------------
# 文件复制
#------------------------------------------------------------
# 从Container复制文件autorun.sh到Host主机的/home目录下
# 也可以是目录复制
docker cp test:/etc/init.d/autorun.sh /home
# 从Host主机复制文件或文件夹到Container主机
# 使用scp命令,如果没有安装scp,使用yum install openssh-clients
# 首先需要使用docker exec进入到Container的终端
scp -rp root@192.168.0.35:/home/jetty8/* /home/
#------------------------------------------------------------
# docker容器自动启动
#------------------------------------------------------------
docker run --restart=always redis
#------------------------------------------------------------
# 挂载数据卷
# 参数privileged=true:意思给容器添加特权,比如对挂载卷的读写
# 挂载多个数据卷,可以使用多次-v
#------------------------------------------------------------
# 创建数据卷容器,并挂载目录
docker run -it --privileged=true -v /home/jetty8:/home/jetty8 --name jetty centos bash
# 使用数据卷容器创建新的数据卷容器
docker run -it --privileged=true --volumes-from jetty --name os centos bash #------------------------------------------------------------
# 使用Dockerfile创建镜像
#------------------------------------------------------------
# 注意后面的一点不可少:.
docker build -f dockerfile -t my/centos .
[Linux] - Docker 常用命令的更多相关文章
- 【Docker】(3)---linux部署Docker、Docker常用命令
linux部署Docker.Docker常用命令 本次部署Linux版本:CentOS 7.4 64位. 说明: 因为Docker是基于Linux 64bit的 所以Docker要求64位的系统且内核 ...
- 关于Docker 常用命令
Docker 常用命令 分类列一下常用的CLI命令 仓库相关 search/ pull / push / login etc. 例:docker pull ubuntu 从仓库下载ubuntuimag ...
- Docker---(3)Docker常用命令
原文:Docker---(3)Docker常用命令 版权声明:欢迎转载,请标明出处,如有问题,欢迎指正!谢谢!微信:w1186355422 https://blog.csdn.net/weixin_3 ...
- Docker常用命令-全
原文内容来自于LZ(楼主)的印象笔记,如出现排版异常或图片丢失等问题,可查看当前链接: https://app.yinxiang.com/shard/s17/nl/19391737/9f6bf39e- ...
- Docker 常用命令和Dockerfile
Docker 简介 官方的解释为:Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现 ...
- [转帖]Docker常用命令总结
Docker常用命令总结 http://www.ha97.com/5546.html 发表于: Linux, 互联网, 虚拟化与云计算 | 作者: 博客教主 标签: docker,常用命令,总结 PS ...
- docker常用命令与容器创建
################docker安装##################### Docker从1.13版本之后采用时间线的方式作为版本号,分为社区版CE和企业版EE. 社区版是免费提供给个 ...
- Docker(三)Docker常用命令
Docker常用命令 帮助命令 # 显示 Docker 版本信息 docker version # 显示系统信息,包括镜像和容器的数量 docker info # 查看帮助文档 帮助文档地址:http ...
- Docker | Docker常用命令学习笔记
@ 目录 前言 1. 帮助命令: version.info.help 2. 镜像命令: images.search pull.rmi 3. 容器命令: pull.run ps.exit .ctrl+P ...
随机推荐
- CoreJava学习笔记1-基本概念、对象和类
一. java的基本程序设计结构 (一) java共有8种基本类型:4种整型,2种浮点类型,1种char,1种boolean. 1) 4种整型:byte(1).short(2). ...
- Maven项目下java.lang.ClassNotFoundException的解决方法
问题背景: Maven的project下,项目中已经引用了相应的jar包.Java class中没有语法错误,在执行时报ClassNotFound.检查了Maven的pom.xml,依赖引入正常. 错 ...
- Silverlight behavior(行为) trigger 大全
behavior是超级有用的东西,一定要学会,因为这个就是面向对象编程中的封装.超级重要! 欢迎大家如果有好的效果,可以给我留言,我打算不断的整理这个behavior,希望不久用behavior可以做 ...
- MySQL语句中的转义字符----引号
MySQL语言中的转义字符和各种编程语言基本相同,见下表 形式 含义 \0 0(NUL)字符 \n 换行 \r 回车符 \t 制表符 \b 退格 \' 单引号 \" 双引号 \\ 反斜线 \ ...
- 什么是 kNN 算法?
学习 machine learning 的最低要求是什么? 我发觉要求可以很低,甚至初中程度已经可以. 首先要学习一点 Python 编程,譬如这两本小孩子用的书:[1][2]便可. 数学方面 ...
- SPM Homework 1 —A Project From My Personal Life
我所完成的一个项目是上学期WEB的期末作业. 项目本质:使用Java Web编写一个网上银行系统,并实现老师所给的几项要求:分角色2015登陆.开户.存取款.转款.查看明细等. 最初目标:能够完成所有 ...
- JMS总结
一 什么是JMS 1.JMS,Java Message Service,Java消息服务是一种可以实现异步通讯的消息中间件MOM(Message Oriented Middleware,面向消息的中间 ...
- Aspose.Cells 首次使用,用到模版填充数据,合并单元格,换行
Aspose.Cells 首次使用,用到模版填充数据,合并单元格,换行 模版格式,图格式是最简单的格式,但实际效果不是这种,实际效果图如图2 图2 ,注意看红色部分,一对一是正常的,但是有一对多的订单 ...
- 数据结构与算法分析-AVL树
1.AVL树是带有平衡条件的二叉查找树. 2.AVL树的每个节点高度最多相差1. 3.AVL树实现的难点在于插入或删除操作.由于插入和删除都有可能破坏AVL树高度最多相差1的特性,所以当特性被破坏时需 ...
- 用python+selenium抓取微博24小时热门话题的前15个并保存到txt中
抓取微博24小时热门话题的前15个,抓取的内容请保存至txt文件中,需要抓取排行.话题和阅读数 #coding=utf-8 from selenium import webdriver import ...