Docker 安装使用

docker 安装使用

  • 下载安装toolbox
    1
    https://www.docker.com/products/docker-toolbox
  • 搜索镜像
    1
    https://hub.docker.com/explore/
  • 阿里云镜像
    1
    https://dev.aliyun.com/search.html
  • 查看本地已有镜像
    1
    docker images
  • 下载docker镜像
    1
    docker pull centos
  • 查看docker默认机器列表
    1
    docker-machine ls
    1
    2
    NAME      ACTIVE   DRIVER       STATE     URL                         SWARM   DOCKER        ERRORS
    default * virtualbox Running tcp://192.168.99.100:2376 v17.06.0-ce
  • 删除docker默认机器
    1
    docker-machine rm default
    1
    2
    3
    4
    About to remove default
    WARNING: This action will delete both local reference and remote instance.
    Are you sure? (y/n): y
    Successfully removed default
  • 创建docker阿里云镜像
    • 创建一台安装有Docker环境的Linux虚拟机,指定机器名称为default,同时配置Docker加速器地址。
      1
      docker-machine create --engine-registry-mirror=https://01i5xjda.mirror.aliyuncs.com -d virtualbox default
    • 查看机器的环境配置,并配置到本地,并通过Docker客户端访问Docker服务。
      1
      2
      3
      docker-machine env default
      eval "$(docker-machine env default)"
      docker info

      配置完成后下载镜像就会默认走阿里镜像,速度回快很多。

  • 运行docker镜像
    1
    docker run centos //默认会检查是否存在 ,不存在会自动下载并运行
  • 查看运行docker容器
    1
    2
    3
    4
    5
    6
    7
    docker ps
    docker ps --all
    docker ps -a
    -----------
    CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
    9fb28a9ea67c centos "ls" 4 minutes ago Exited (0) 4 minutes ago zen_jang
    -----------
  • 删除容器
    1
    docker rm 9fb28a9ea67c
  • 创建容器
    1
    2
    3
    4
    docker run --name greeting centos /bin/echo 'hello'
    -----------
    hello
    -----------
  • 查看最近一次创建容器
    1
    2
    3
    4
    5
     docker ps --all --latest
    -----------
    CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
    1097ab0cfee6 centos "/bin/echo hello" 14 seconds ago Exited (0) 13 seconds ago greeting
    -----------
  • docker启动停止命令
    1
    2
    3
    4
     docker logs greeting //查看docker日志  docker logs + 名称或ID
    docker restar greeting //重启容器
    docker stop greeting //停止容器
    docker start greeting //启动容器
  • 创建带交互的容器
    1
    2
    docker run --interactive --tty centos /bin/bash  // --interactive  简写 -i 带交互的容器  --tty 简写-t 为容器创建一个终端
    exit //退出

创建镜像

  • 创建容器
    1
    docker run -i -t centos bash
  • 容器安装nodejs
    1
    2
    curl --silent --location https://rpm.nodesource.com/setup_6.x | bash ## 设置源
    yum install -y nodejs
  • 提交容器修改
    1
    2
    docker commit -m 'install nodejs' -a 'Alex' 702425f76bc1 alex/nodejs-install
    // -a '作者' 702425f76bc1 id、name
  • 删除
    1
    2
    docker rm 40655325986d //删除容器
    docker rmi alex/nodejs-install //删除镜像