docker 在ubuntu16/centos6.9中的安装及常用操作

docker 在ubuntu16/centos6.9中的安装及常用操作

1. 镜像-容器

2. ubuntu16安装

  • 更新ubuntu的apt源索引 ‘sudo apt-get update‘

  • 安装包允许apt通过HTTPS使用仓库

    • sudo apt-get install \
      apt-transport-https \
      ca-certificates \
      curl \
      software-properties-common
      
  • 添加Docker官方GPG key
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

  • 设置Docker稳定版仓库
    sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable"

  • 添加仓库后,更新apt源索引
    sudo apt-get update

  • 安装最新版Docker CE(社区版)
    sudo apt-get install docker-ce

  • 检查Docker CE是否安装正确
    sudo docker run hello-world

  • 更改权限,不用每次都写sudo
    sudo usermod -a -G docker $USER

  • 2.1. ubuntu下操作docker

     # 启动docker
     sudo service docker start
     # 停止docker
     sudo service docker stop
     # 重启docker
     sudo service docker restart
     # 列出镜像
     docker image ls
     # 拉取镜像
     docker image pull library/hello-world
     docker image pull hello-world
     # 删除镜像
     docker image rm 镜像名或镜像id
     # 创建容器
     docker run [option] 镜像名 [向启动容器中传入的命令]
     # 创建交互式容器
     docker run -it --name=myubuntu ubuntu /bin/bash
     # 创建守护式容器
     docker run -dit --name=myubuntu2 ubuntu
     # 进入已运行的容器
     docker exec -it 容器名或容器id 进入后执行的第一个命令
     docker exec -it myubuntu2 /bin/bash
     #查看容器
     docker container ls #列出本机正在运行的容器
     docker container ls --all # 列出本机所有容器,包括已经终止运行的
     # 停止容器
     docker container stop ubuntu2
     # 停止一个已经在运行的容器
     docker container stop 容器名或容器id
     # 启动一个已经停止的容器
     docker container start 容器名或容器id
     # kill掉一个已经在运行的容器
     docker container kill 容器名或容器id
     # 删除容器
     docker container rm 容器名或容器id
    
  • 2.2. 创建容器参数

    1. 常用可选参数说明:
      • -i 表示以“交互模式”运行容器
      • -t 表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去。即 分配一个伪终端。
      • --name 为创建的容器命名
      • -v 表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录,即 宿主机目录:容器中目录),可以使 用多个-v 做多个目录或文件映射。注意:最好做目录映射,在宿主机上做修改,然后 共享到容器上。
      • -d 在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不 会自动登录容器,如果只加-i -t 两个参数,创建后就会自动进去容器)。
      • -p 表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个-p 做多个端口映射
      • -e 为容器设置环境变量
      • --network=host 表示将主机的网络环境映射到容器中,容器的网络与主机相同
  • 2.3. 将容器保存为镜像
    docker commit 容器名 镜像名

  • 2.4. 镜像备份与迁移

    save命令将镜像打包成文件
    docker save -o 保存的文件名 镜像名
    docker save -o ./ubuntu.tar ubuntu
    
  • 2.5. 本地镜像加载

    可以通过load方法,将镜像加载到本地
    docker load -i ./ubuntu.tar
    ```   ​
    
  • 2.6. docker image list
    docker image ls

  • 2.7. 删除容器
    docker rm container_id

3. centos6.9上安装docker

  • 3.1更新centos源(参考https://www.jianshu.com/p/1a765617be7d)
    • 查看当前系统Docker信息
      docker info
  • 3.2 安装docker
yum install -y epel-release
yum search docker
yum install -y docker-io.x86_64
  • 3.3 docker镜像操作
# 启动docker
sudo service docker start
#停止docker
sudo service docker stop
# 重启docker
sudo service docker restart
#拉取docker镜像
docker pull image_name
docker pull centos:latest
#拉取docker镜像指定版本
docker pull centos:6.9
#查找Docker Hub上的nginx镜像
docker search nginx
#删除镜像
 docker rmi image_id/iamge_name
#查看宿主机上的镜像,Docker镜像保存在/var/lib/docker目录下:
docker images
  • 3.4 docker容器操作
#创建容器
docker run -i -t  /bin/bash(没有/bin/bash会立刻退出)
#守护进程创建容器,容器会在后台运行
docker run -itd --name=install_py2.7 657531b0552b /bin/bash
# 进入后台正在运行的容器
docker attach container_name/container_id
#启动容器,并挂载本地目录文件(-v),冒号前为本地目录,冒号后为容器目录
docker run -it -v /home/work/Downloads:/home  image_name/image_id  /bin/bash
#多窗口启动容器, 分配一个伪终端.
docker exec -it container_id /bin/bash
#查看当前有哪些容器正在运行
docker ps
# 查看所有容器
docker ps -a
# 重命名
docker rename old容器名  new容器名

# 退出容器 exit
# 启动、停止、重启容器命令:
docker start container_name/container_id
docker stop container_name/container_id
docker restart container_name/container_id

# 删除容器的命令:
docker rm container_name/container_id
# 删除所有停止的容器:
docker rm $(docker ps -a -q)
  • 3.5 docker容器备份与恢复
#备份
docker commit -p 30b8f18f20b4 container-backup
docker save -o ~/container-backup.tar container-backup

#恢复到镜像中
docker load -i ~/container-backup.tar
  • docker是最小化配置的镜像,以centos为例,安装
    yum install -y net-tools
    yum install -y wget
    以便后续操作

你可能感兴趣的:(docker 在ubuntu16/centos6.9中的安装及常用操作)