- Docker
- Centos8 Docker安装
- Docker常用命令
- 容器安装vim方法
- Docker在宿主机和容器之间交换⽂件
- 本地文件挂载到容器
- 打包镜像
Docker在2013年诞生,在2017年成为主流。
每个容器都是一个进程,共享一个系统内核。
- 虚拟化效果:容器是将代码和环境的关系打包在一起的一个集合,而虚拟机的在物理层面上,分出来的一个操作系统
- 消耗资源低:多个容器可以运行在同一台机器上,并共享一个操作系统的内核资源。虚拟机也可以运行多个在同一台机器上,但每个虚拟机都需要一个完整的操作系统,比较占用资源
- 体积小:容器的存储开销在百M间,虚拟机大多几G
#dokcer前置程序 yum -y install yum-utils device-mapper-persistent-data lvm2 #给Docker添加稳定仓库,访问时候更稳点些 yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo #podman前置程序 yum install -y https://download.docker.com/linux/fedora/30/x86_64/stable/Packages/containerd.io-1.2.6-3.3.fc30.x86_64.rpm #安装docker-ce社区版和docker-ce客户端 Centos8的podman问题所以要加allowerasing yum install -y --allowerasing docker-ce docker-ce-cli #启动docker systemctl start docker #改阿里源 https://help.aliyun.com/document_detail/60750.htmlDocker常用命令
docker search centos 搜索镜像 docker pull centos 拉镜像 docker images 查看本机镜像列表 docker run -itd --name 容器名 镜像ID /bin/bash -it交互 -d放后台 /bin/bash 使用这个shell启动 docker ps 查看正在运行的容器 docker ps -a 查看所有的容器 docker exec -it 容器ID /bin/bash 进入容器 docker stop 容器ID 关闭容器 docker start 容器ID 启动容器 docker rm 容器ID 删除容器 STATUS Exited (0) docker kill 容器ID 杀掉容器 STATUS Exited (137) docker rmi 镜像ID 删除镜像 docker images -a 查看全部镜像,有的镜像有依赖不用-a看不到 docker run -itd --name 容器名 -p 801:80 镜像ID # -p 801:80 将docker里的80端口映射到本机801端口 docker exec -it 容器名 /bin/bash 进入容器
Docker中的nginx 默认页面目录:cd /usr/share/nginx/html/
容器安装vim方法docker exec -it [nginx_docker_name] /bin/bash cp /etc/apt/sources.list /etc/apt/sources.list.bak #备份源文件 sed -i 's/deb.debian.org/mirrors.ustc.edu.cn/g' /etc/apt/sources.list #更换为国内源 apt-get update apt-get install -y vimDocker在宿主机和容器之间交换⽂件
复制文件到Docker中:
docker cp /root/test2.html nginx_test1:/usr/share/nginx/html/test2.html
复制目录到Docker中:
docker cp /root/test nginx_test1:/usr/share/nginx/html/test
复制文件到本机中:
docker cp nginx_test1:/usr/share/nginx/html/test3.html /root/test3.html
docker run -itd --name test3 -p 801:80 -v 本地目录:容器目录 容器名
-v 映射本地目录:容器里的目录
将容器打包为镜像:
docker commit 容器ID 镜像名:标签
⽤ save ⼦命令将Docker仓库的镜像保存本地⽬录下;
docker save -o 目录/镜像名.tar 镜像名:标签
将本地目录下的镜像备份文件导⼊到本地 Docker 仓库:
⽅式⼀(不输出详细信息):
docker load -i 本地镜像文件
⽅式⼆(输出详细信息):
docker load < 本地镜像文件r 本地镜像文件例如tomcat.guo.tar



