Docker

4 篇文章 0 订阅
1 篇文章 0 订阅

Docker

Docker 是一个开源的应用容器引擎,让开发添加链接描述者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器或Windows 机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。(轻量级的虚拟机)
一个完整的Docker有以下几个部分组成:

  • DockerClient客户端
  • Docker Daemon守护进程
  • Docker Image镜像
  • DockerContainer容器
镜像

镜像通俗的来讲就是虚拟机的静态文件
官方jinix

容器

容器就是从镜像运行启动的虚拟机

yum在线安装docker

https://docs.docker.com/install/linux/docker-ce/centos/

安装一组工具

sudo yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2

设置yum仓库地址

sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
    
sudo yum-config-manager \
     --add-repo \
     http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

更新yum缓存

sudo yum makecache fast

安装最新版docker

sudo yum install -y docker-ce docker-ce-cli containerd.io

启动docker系统服务并设置开机启动

sudo systemctl start docker
sudo systemctl enable docker

关于镜像加速的问题

由于国内的网络的原因,需要配置加速器来加速
生成文件daemon.json

cat <<EOF > /etc/docker/daemon.json
{
  "registry-mirrors": [
    "https://dockerhub.azk8s.cn",
    "https://hub-mirror.c.163.com"
  ]
}
EOF

重新启动服务,查看镜像配置

# 重新加载docker配置
sudo systemctl daemon-reload

#重启docker服务
sudo systemctl restart docker
docker info

下载hello-world镜像

docker pull hello-world

运行hello-world镜像,验证docker运行正常

sudo docker run hello-world

docker镜像操作

下载CentOS镜像

docker pull centos:7

查看镜像

docker image ls

运行centos7

docker run -it xxxx bash

删除镜像
501 镜像 id 前几位,一般三位以上,足够区分即可

docker image rm 501

删除指定的仓库镜像

docker image rm centos

镜像导出

docker save mysql:5.7 node:8 | gzip > app.tar.gz  

镜像导入

docker load < apps.tar.gz  

容器

从镜像运行启动的虚拟机

从 tomcat 运行启动容器 # -it: i交互 t终端 # 启动后 ctrl+c 结束tomcat,容器也会自动退出

docker run \
-it \
tomcat

查看容器列表

docker ps      # 查看正在运行的容器
docker ps -a   # 查看所有容器,包括已退出的容器

再启动一个 tomcat 容器 # -d: 后台运行,不会开启终端,不占用命令行

–name: 容器命名

​
docker run \
-d \
--name tomcat01 \
tomcat
​

容器停止、重启

docker stop tomcat01
docker ps -a
​
docker restart tomcat01
docker ps -a
​

在容器内部运行命令

docker exec -it tomcat01 ls
docker exec -it tomcat01 pwd
docker exec -it tomcat01 touch f1.txt
docker exec -it tomcat01 ls
docker exec -it tomcat01 top
docker exec -it tomcat01 bash

新启动一个容器时,指定容器运行的命令

容器启动后有默认的运行命令,是在镜像中设置的

docker history tomcat

–rm 当容器关闭退出时,自动删除

docker run \
-it \
--name tomcat02 \
--rm \
tomcat \

bash # 用自己自定的命令,覆盖了tomcat镜像的默认命令(catalina.sh run)

#> top

删除容器

docker rm xxx     # 删除停止的容器
docker rm -f xxx  # -f强制删除可以删除运行的容器

清理所有停止的容器

docker container prune

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值