0%

Docker

Docker

1、简介

Docker是一个开源的应用容器引擎

Docker支持将软件编译成一个镜像,然后在镜像中各种软件做好配置,将镜像发布出去,其它使用者可以直接使用这个镜像

运行中的这个镜像称为容器,容器启动是非常快速的。

2、核心概念

  • Docker主机(Host):安装了Docker程序的机器(Docker是直接安装在操作系统之上的)
  • Docker客户端(Client):连接Docker主机进行操作
  • Docker仓库(Registry):用来保存各种打包好的软件镜像
  • Docker镜像(Images):软件打包好的镜像,放在Docker仓库中
  • Docker容器(Container):镜像启动后的一个实例称为容器

3、使用Docker

步骤:

  1. 安装Docker

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    # 检查内核版本,必须在3.10及以上
    uname -r
    # 安装Docker
    yum install docker
    # 启动Docker
    Systemctl start docker
    # 查看版本
    docker -v
    # 设置开机自启动
    systemctl enable docker
  2. 去Docker仓库找到软件对应的镜像

    1
    2
    docker search tomcat
    docker pull tomcat
  3. 使用Docker运行这个镜像,这个镜像就会生成一个Docker容器

    1
    docker run --name mytomcat -d tomcat:latest
  4. 对容器的启动停止就是对软件的启动与停止

    1
    docker stop

4、Docker常用操作

镜像操作

操作 命令 说明
检索 docker search 关键字 去docker hub上检索镜像
拉取 docker pull 镜像名:tag :tag是可选的,tag表示标签,多为软件的版本,默认是latest
列表 docker images 查看所有本地镜像
删除 docker rmi image-id 删除指定的本地镜像

容器操作

操作 命令 说明
运行 docker run --name container-name -d image-name --name:自定义容器名;-d:后台运行;image-name:指定镜像模板
列表 docker ps(查看运行中的容器) 加上-a可以查看所有容器
停止 docker stop container-name/container-id 停止当前运行的容器
端口映射 -p 6666:6379(则使用6666访问) -p:主机端口(映射到)容器内部的端口
容器日志 docker logs container -name/container-id

如果有权限问题,可:

1
2
3
4
5
6
7
8
9
sudo docker run xxx
#
sudo groupadd docker #添加docker用户组
sudo gpasswd -a $USER docker #将登陆用户加入到docker用户组中
newgrp docker #更新用户组
docker ps #测试docker命令是否可以使用sudo正常使用

# 切换group
newgrp - docker