美文网首页
玩转 :docker-ce

玩转 :docker-ce

作者: JohnYuCN | 来源:发表于2020-01-23 16:59 被阅读0次

一、软件安装:

  1. Ubuntu的安装
  2. MacOS的安装
  3. Windows的安装

*NIX启停管理: service docker [start|stop|restart]

国内下载加速:

sudo vim /etc/default/docker

# 加入:

DOCKER_OPTS="--registry-mirror=https://registry.docker-cn.com"

# 重启:

sudo service docker restart

二、镜像文件的管理

  1. 基本命令:
# 查看下载的镜像
docker image ls

#  从docker中心搜索镜像
docker search [关键字]
# 拉取镜像:
docker image pull [镜像名称]

# 删除镜像:
docker image rm [镜像名称]
# 运行镜像(新建立一个容器,并执行镜像)
docker container run [镜像名称]

# 查看镜像文件的配置信息:
docker inspect [镜像文件名]
  1. FAQ:

A: docker run 和docker container run的区别
Q:它们的作用都新建立一个container ,然后运行指定的image(的CMD),docker run出现的较早,但语义化较弱。


三、 容器文件的管理

  1. 容器文件的产生:
    每次镜像文件的运行都会新建一个容器文件,即使用运行结束,该文件也会保留,运行了三次的hello-world镜像,如下图:
docker container ls --all
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                      PORTS                 NAMES
479bcca490a2        hello-world         "/hello"                 6 seconds ago       Exited (0) 5 seconds ago                          focused_poincare
9796c4c519c8        hello-world         "/hello"                 2 minutes ago       Exited (0) 2 minutes ago                          nifty_robinson
4471c3dc95fc        hello-world         "/hello"                 3 minutes ago       Exited (0) 3 minutes ago                          zen_germain
  1. 不保留容器文件的方法:
docker container run --rm hello-world
  1. 查看容器文件:
# 运行中的容器
docker container ls 
# 所有容器
docker container ls --all

注意:每个容器都有container_id 和 name,可以做为其被管理的句柄。

  1. 终止正在运行的容器:
docker container kill [container_id|name]
  1. 删除容器:
docker container rm [container_id|name]

四、与运行容器的交互

  1. 利用已有的容器文件启动容器
docker container start [container_id|name]
  1. 案例:启动mysql的容器
docker container run -d \
-p 0.0.0.0:3306:3306 \
--rm  \
--name wordpressdb   \
--env MYSQL_ROOT_PASSWORD=123456   --env MYSQL_DATABASE=wordpress   mysql:5.7

以上的参数解释如下:

  • -d
    以守护进程运行“镜像的command”(默认以前台进程执行)
  • -p
    端口的映射,将容器内的3306端口映射成为:任意网卡的3306
  • --rm
    容器停止时,将删除容器文件
  • --name
    容器名称
  • env
    为容器启动指定环境变量(该变量在镜像文件创建时约定,可以通过docker inspect查看)
  • mysql:5.7
    指定镜像文件名及版本号。
  1. 案例: 以交互方式进行linux容器
docker container run --rm  -it ubuntu /bin/bash

参数:

  • -i 以交互方式(传递stdin,stdout,stderr到容器)
  • -t 使用tty
  1. 案例:docker 启动php,并映射到本地文件夹
docker container run --rm -d \
-p 0.0.0.0:3001:80  \
--name myphp \
--volume "$PWD/":/var/www/html \
php:5.6-apache

参数解释:

  • --volume "$PWD/":/var/www/html
    将当前路径映射到“容器”的/var/www/html目录下。

相关文章

网友评论

      本文标题:玩转 :docker-ce

      本文链接:https://www.haomeiwen.com/subject/mvlnzctx.html