Docker容器入门-基本命令的使用
目前容器技术使用相当广泛
不会或者没有使用过容器感觉都不像是个搞技术的
所以,我也就docker相关内容做一个整理
只有不断的学习,才能保持自己的竞争力
什么是容器?
容器是一种轻量级、可移植、自包含的软件打包技术,使应用程序可以在几乎任何地方以相同的方式运行。
为什么使用容器?
容器使软件具备了超强的可移植能力
怎样使用容器?
容器常用的基本操作:
docker stop\start\restart [container_id\container_name] // 停止、启动、重启容器
docker kill [container_id\container_name] // 强制停止
docker pause\unpause [container_id\container_name] // 暂停、取消暂停
docker rm [container_id\container_name] // 删除容器
docker rmi [image_id\image_name] // 删除镜像
// 按条件查找容器id, -a 所有 -q 只显示id -f filter过滤
docker ps -aq -f status=running
docker ps -aq -f status=exited
docker ps -aq -f status=created
// 查看容器日志
docker logs -f <container>
// 进入shell
docker exec -it <container> sh
// 进入bash
docker exec -it <container> /bin/bash
限制容器内存使用:-m 或 --memory 设置内存的使用限额、--memory-swap 设置内存+swap的使用限额
docker run -m 200M --memory-swap=300M ubuntu
限制容器CPU使用:-c 或 --cpu-shares 设置权重、 --cpu 设置工作线程数量
docker run -it -c 1024 progrium/stress --cpu 1
限制容器IO的使用:--blkio-weight 设置block IO的优先级
docker run -it --name my_ubuntu --blkio-weight 600 ubuntu
创建自定义IP网段的容器网络:
docker network create --driver bridge --subnet 172.22.22.0/24 --gateway 172.22.22.1 my_net
启动时给容器指定一个静态ip:只有使用 --subnet 创建的网络才能指定静态ip
docker run -it --network=my_net --ip 172.22.22.22 busybox
查看容器网络:
docker network ls
共享网络栈:使用 --network=container:web1 指定 jointed 容器为 web1
将主机上的目录或者文件挂载到容器:使用 -v : 将其 mount 到容器
docker run -d -p 80:80 -v ~/htdocs:/usr/local/apache2/htdocs httpd
docker run -d -p 80:80 -v ~/htdocs:/usr/local/apache2/htdocs:ro httpd // ro设置只读权限,容器不能对该文件做修改
使用volume container共享容器数据:通过 --volumes-from 使用 vc_data 这个 volume container
1.创建一个vc:
docker create --name vc_data -v ~/htdocs:/usr/local/apache2/htdocs -v /other/useful/tools busybox
2.共享vc:
docker run --name web1 -d -p 80 --volumes-from vc_data httpd
docker run --name web2 -d -p 80 --volumes-from vc_data httpd
docker删除bind mount:只能由host负责删除
docker删除docker managed volume:删除容器时加上 -v 可以删除容器依赖的volume
如果删除容易时,没有加-v删除依赖volume,也可以用:docker volume rm <volume_id>
Docker容器入门-基本命令的使用的更多相关文章
- 自动化集成:Docker容器入门简介
前言:该系列文章,围绕持续集成:Jenkins+Docker+K8S相关组件,实现自动化管理源码编译.打包.镜像构建.部署等操作:本篇文章主要描述Docker基础用法. 一.Docker简介 1.基础 ...
- Docker容器入门
为什么要看docker 从去年起就或多或少的接受了docker的熏陶,主要还是Infoq在去年有很多关于docker的实践视频讲座,记得有一篇是<Docker在雪球的技术实践>,当时听的也 ...
- docker容器入门最佳教程
为什么要写这个 简单回答是:容器技术非常热门,但门槛高. 容器技术是继大数据和云计算之后又一炙手可热的技术,而且未来相当一段时间内都会非常流行. 对 IT 行业来说,这是一项非常有价值的技术.而对 I ...
- Docker容器入门篇
第1章 Docker简介 1.1 Docker容器介绍 Docker官网:https://www.docker.com/ 什么是docker? Docker 最初是 dotCloud 公司创始人 So ...
- Docker容器入门实践
Docker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目.它基于 Google 公司推出的 Go 语言实现. 项目后来加入了 Linux 基金会,遵从了 ...
- Docker容器入门介绍
1.前言 Docker是一种新兴的虚拟化技术,能够一定程度上的代替传统虚拟机.不过,Docker 跟传统的虚拟化方式相比具有众多的优势.Docker: 本意是码头工人,言外之意是集装箱: Java号称 ...
- Docker 容器入门
1.1 容器简介 1.1.1 什么是 Linux 容器 Linux容器是与系统其他部分隔离开的一系列进程,从另一个镜像运行,并由该镜像提供支持进程所需的全部文件.容器提供的镜像包含了应用的所有依赖项, ...
- docker新手入门(基本命令以及介绍)
Docker 的核心内容 镜像 (Image) 容器 (Container) 仓库 (Repository) Registry 用来保存用户构建的镜像 docker的开始使用: 1. docker ...
- Docker容器入门之一:部署SpringBoot项目
一.环境准备: 1.vm虚拟机: Workstation 12 Pro 12.5.7 build-5813279 2.Centos 7 在虚拟机上安装好Centos7系统后,就可以开始准备安装D ...
随机推荐
- vuex源码阅读分析
这几天忙啊,有绝地求生要上分,英雄联盟新赛季需要上分,就懒着什么也没写,很惭愧.这个vuex,vue-router,vue的源码我半个月前就看的差不多了,但是懒,哈哈.下面是vuex的源码分析在分析源 ...
- 前端面试题-HTML语义化标签
一.HTML5语义化标签 标签 描述 <article> 页面独立的内容区域. <aside> 页面的侧边栏内容. <bdi> 允许您设置一段文本,使其脱离其父元素 ...
- idea使用Tomcat部署war 和 war exploded的区别
war模式:将WEB工程一包的形式上传到服务器中.war exploded模式:将WEB工程以当前文件夹的位置关系上传到服务器.解析:war 模式这种可以称为是发布模式(完整的项目),将项目打成war ...
- linux构建DHCP服务器
1.DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作,主要用途:给内部网络或网络服务供应商自动分配IP地址 ...
- span(行级元素)在不定高的div(块级元素)中垂直居中的方法
设置父级元素: align-items: center; display: flex;
- computed 里面 不能写箭头函数 都要写 function () {} 否则页面会都不显示
computed 里面 不能写箭头函数 都要写 function () {} 否则页面会都不显示
- Redis为什么这么快?
Redis为什么这么快?
- 使用AJAX实现用户名的唯一性校验(注册界面)-JAVA(新手)
(1)实现用户名的唯一性校验 所需要准备的: Servlet 注册界面的JSP 接口和实现类 所需要的接口和实现类: 接口: /* * 用户注册 * 账号的唯一性校验,需要传参(username) * ...
- 0402数据放入集合进行查询-Java(新手)
JDBC工具类: package cn.Wuchang.zyDome; import java.sql.*; public class JDBCUtils { private static final ...
- Natas22 Writeup(header重定向、burp截取抓包)
Natas22: 打开页面是一个空白页面,查看源码,看起来好像是需要我们在url中添加“revelio”参数即可,然而实验了之后发现浏览器跳转回了原来的页面. 再次仔细审计源码,会看到页面开头有一个重 ...