docker 使用:镜像和容器
docker 镜像
docker image是一个极度精简版的Linux程序运行环境,官网的java镜像包括的东西更少,除非是镜像叠加方式的如centos+java7,需要定制化build的一个安装包,包括基础镜像+应用的二进制部署包,内不建议有运行期需要修改的配置文件
Dockerfile用来创建一个自定义的image,包含了用户指定的软件依赖等。当前目录下包含Dockerfile,使用命令build来创建新的image
docker image的最佳实践之一是尽量重用和使用网上公开的基础镜像
通过docker 拉取 一个ubuntu的镜像。
docker pull ubuntu
使用命令查看镜像是否存在:
docker images
这时候我们多了一个相应的镜像:
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu latest d131e0fa2585 10 days ago 102MB
docker 容器
使用这个镜像启动一个实例,这个实例称为容器。
Docker container是image的实例,共享内核不同的容器里可以运行不同os的image,比如Ubuntu的或者centos,不建议内部开启一个sshd服务,1.3版本后新增了docker exec命令进入容器进行排查问题,没有ip地址,通常不会有服务端口暴露,是一个封闭的沙盒。
通过镜像启动一个实例:
docker run -it -d --name ubuntu_test ubuntu
通过命令查看容器是否启动:
docker ps
得到如下结果:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
de3589d1bafa ubuntu "/bin/bash" 13 minutes ago Up 13 minutes ubuntu_test
镜像和容器的删除
删除容器的时候需要确保容器没有在运行,在运行的话需要先关闭:
docker stop de3589d1bafa
然后进行删除:
docker rm de3589d1bafa
删除镜像,需要保证镜像没有被容器使用:
docker rmi d131e0fa2585
如果删除所有的容器可以使用如下:
docker stop $(docker ps -a -q)
docker rm $(docker ps -aq)
进入容器
安装完成了容器以后,想看看到底容器里面是什么,可以使用exec进入容器,例如进入ubuntu的容器中,容器跟普通的ubuntu没有什么区别:
docker exec -it de3589d1bafa /bin/bash
更多教程:大家来编程
docker 使用:镜像和容器的更多相关文章
- 在Centos7 更改Docker默认镜像和容器的位置
图片出处:https://bobcares.com/wp-content/uploads/docker-change-directory.jpg 一.Why? 通常,当你开始使用docker时,我们并 ...
- docker(三) 镜像和容器常用命令
一.镜像操作 1.搜索镜像 可以直接在Docker Hub 直接搜索镜像,当然也可以使用命令来搜索. docker search 名称 docker search tomcat 2.拉取镜像 dock ...
- s3 Docker的镜像和容器
Docker技术里最为基础的两大概念:镜像和容器.镜像的 获取方式:从registry拉取,从Dockerfile构建:容器的基本操作 1 Docker架构和底层技术简介 Docker Platfor ...
- CentOS7更改Docker默认镜像和容器存储位置
图片出处:https://bobcares.com/wp-content/uploads/docker-change-directory.jpg 一.Why? 通常,当你开始使用docker时,我们并 ...
- 【docker】关于docker 中 镜像、容器的关系理解
例如,使用docker 拉取下来一个要用的镜像es docker pull elasticsearch:5.6.9 此时es的镜像存在与服务器上 docker images 对于你运行镜像为一个容器的 ...
- 修改Docker默认镜像和容器的存储位置
一.Why Docker默认的镜像和容器存储位置在/var/lib/docker中,如果仅仅是做测试,我们可能没有必要修改,但是当大量使用的时候,我们可能就要默认存储的位置了. 二.How 2.1 修 ...
- Docker关于镜像、容器的基本命令
镜像 1.获取镜像 docker pull 服务器:端口/仓库名称:镜像 ➜ ~ docker pull python Using default tag: latest 2.查看镜像信息 列出本机所 ...
- Docker的镜像及容器常用操作(2)
一.docker镜像 镜像(docker image) --- Docker 运行容器之前需要本地存在镜像,若本能地不存在,那么 Docker 会找默认镜像仓库( Docker Hub 公共注册服务器 ...
- docker 恶意镜像到容器逃逸影响本机
转载:http://521.li/post/122.html SUSE Linux GmbH高级软件工程师Aleksa Sarai公布了影响Docker, containerd, Podman, CR ...
- docker 修改镜像和容器的存放路径(最新自己实践了第三种方法)
docker info :查看docker的存储等相关信息. 将路径修改至挂载磁盘中 前提:磁盘已挂载成功 方法一: 1.停止docker 服务 service docker stop 2.备份数据到 ...
随机推荐
- LeetCode No.163,164,165
No.163 FindMissingRanges 缺失的区间 题目 给定一个排序的整数数组 nums ,其中元素的范围在闭区间 [lower, upper] 当中,返回不包含在数组中的缺失区间. 示例 ...
- protobuf编译工具使用
1.下载,配置环境变量 下载地址:https://github.com/google/protobuf/releases,选择protoc-xxx-win64.zip下载 把.exe文件的位置加入到P ...
- 虚函数重载(overwrite) 继承覆盖问题
引言 类接口需要添加默认参数,以适应不同情况调用, 但是clang-tidy 不允许在接口上设置默认参数,ps: 可能担心继承类里接口重新设置新默认参数而导致误用的情况 #include <st ...
- Python笔记_第一篇_面向过程_第一部分_8.画图工具(小海龟turtle)
turtle 是一个简单的绘图工具. 提供一个小海龟,可以把它理解为一个机器人,只能听懂有限的命令,且绘图窗口的原点(0,0)在中间,默认海龟的方向是右侧海龟的命令包括三类:运动命令.笔画控制命令.其 ...
- LFW Face Database下载
http://vis-www.cs.umass.edu/lfw/ Download the database: All images as gzipped tar file (173MB, md5su ...
- Codeforces Round #523 (Div. 2) Cdp
题:https://codeforces.com/contest/1061/problem/C 题意:给你一个序列,我们求他们子序列的个数,这个子序列有个限制就是每一个子序列上的值都必须是能整除他的下 ...
- sqlite如何避免重复建表(获取已经存在的表)
找到已经存在的所有表,手动判断是否需要建表 SELECT name FROM SQLITE_MASTER WHERE type='table'ORDER BY name" 建表时sqlite ...
- 文件操作符|-e|-M|-s|-A|_|-r -w $filename|stat|localtime|&|>>|<<
TTY:终端是一种字符型设备,它有多种类型,通常使用tty 来简称各种类型的终端设备 #!/usr/bin/perl use strict; use warnings; print "exi ...
- mysql批量删除报1064原因
DELETE FROM table_name t where t......; 报1064 错误,原因MySQL 中delete 语句不能给表名起别名. 另外.如果记录不存在,delete from ...
- spring-boot-1.4x后@ConfigurationProperties注解舍弃location
--定义额外的.properties配置文件,并引入配置