1、Docker简介、安装与启动
什么是Docker:
Docker 是一个开源的应用容器引擎,基于 Go 语言开发。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互 之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
Docker应用场景
- Web 应用的自动化打包和发布
- 自动化测试和持续集成、发布在服务型环境中部署和调整数据库或其他的后台应用
- 使用Docker可以实现开发人员的开发环境、测试人员的测试环境、运维人员的生产环境的一致性。
Docker容器与传统虚拟机比较
docker启动速度较快,占用体积小
Docker安装与启动
以下步骤在centos环境下安装的步骤
//1、将yum包更新到最新版
sudo yum update
//# 2、作用:安装需要的软件包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
//3、 设置yum源 # 3.1、
//方案一:使用ustc的(推荐)
sudo yum-config-manager --add-repo http://mirrors.ustc.edu.cn/dockerce/linux/centos/docker-ce.repo
//方案二:使用阿里云(可能失败)
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/dockerce/linux/centos/docker-ce.repo
// 4、 安装docker;出现输入的界面都按 y
sudo yum install -y docker-ce
// 5、 查看docker版本
docker -v
安装成功截图:
设置USTC镜像
添加并编辑docker下的daemon.json文件
//创建文件夹
mkdir /etc/docker
//编辑文件 vi命令可以自动创建未存在的文件 也可以手动创建
vi /etc/docker/daemon.json
然后进入界面后按一下键盘“i” 进入插入模式
在daemon.json文件中添加以下内容
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
再ESC+: 退出编辑模式,输入wq 回车保存退出
Docker启动与停止命令
# 启动docker服务: systemctl start docker
# 停止docker服务: systemctl stop docker
# 重启docker服务: systemctl restart docker
# 查看docker服务状态: systemctl status docker
# 设置开机启动docker服务: systemctl enable docker
2、镜像简介与相关命令
镜像:是docker的核心概念,Docker镜像是由文件系统叠加而成的,是一种文件储存的形式,镜像可以认为是某些运行环境或者软件打的包,用户可以从docker仓库中下载基础镜像到本地进行开发,最后将这些开发完成后的资源打包成为一个新的镜像,转交给测试人员,这样就可以保证他们的开发环境与开发者的环境一致。
Docker提供的镜像操作如下
1.查看镜像
docker images
REPOSITORY:镜像名称
TAG:镜像标签
IMAGE ID:镜像ID
CREATED:镜像的创建日期
SIZE: 镜像大小
2.搜索镜像
如果需要寻找网络上的镜像,则需联通网络
docker search + 镜像名称
NAME:镜像名称
DESCRIPTION:镜像描述
STARS:用户评价,反应一个镜像的受欢迎程度
OFFICIAL:是否官方
AUTOMATED:自动构建,表示该镜像由Docker Hub自动构建流程创建的
3.拉取镜像
拉取镜像就是从Docker仓库下载镜像到本地,镜像名称格式为 名称:版本号,如果版本号不指定则是最新的版本 命令如下:
docker pull 镜像名称
// 如 拉取centos 7;
docker pull centos:7
4.删除镜像
可以按照镜像id删除镜像,命令如下:
//根据ID删除镜像
docker rmi 镜像id
//删除所有镜像
docker rmi `docker images -q`:
3、容器简介以及相关命令
容器:也是docker的核心概念,容器是由镜像产生的运行实例 镜像相当于Java语言中的类,容器相当于类中的对象
Docker提供的关于容器的操作有:
1. 查看容器
//查看正在运行的容器使用命令
docker ps
//查看所有容器使用命令
docker ps -a
2.启动容器、停止容器
# 停止正在运行的容器:docker stop 容器名称或者ID
docker stop mycentos2
# 启动已运行过的容器:docker start 容器名称或者ID
docker start mycentos2
文件拷贝
注意:容器在停止状态下也可以完成文件的拷贝
1、将linux宿主机中的文件拷贝到容器内可以使用命令:
# docker cp 需要拷贝的文件或目录 容器名称:容器目录
# 创建一个文件abc.txt
touch abc.txt
# 复制abc.txt到mycentos2的容器的 / 目录下
docker cp abc.txt mycentos2:/
# 进入mycentos2容器
docker exec -it mycentos2 /bin/bash
# 查看容器 / 目录下文件
ll
2、将文件从容器内拷贝出来到linux宿主机使用命令:
# docker cp 容器名称:容器目录 需要拷贝的文件或目录
#进入容器后创建文件cba.txt
touch cba.txt
# 退出容器
exit
# 在Linux宿主机器执行复制;将容器mycentos2的/cba.txt文件复制到 宿主机器的/root目录下
docker cp mycentos2:/cba.txt /root
目录挂载
查看容器ip地址
删除容器