docker笔记

Image:

1.Docker 把应用程序及其依赖,打包在 image 文件里面。只有通过这个文件,才能生成 Docker 容器。image 文件可以看作是容器的模板。Docker 根据 image 文件生成容器的实例。同一个 image 文件,可以生成多个同时运行的容器实例。

2.实际开发中,一个 image 文件往往通过继承另一个 image 文件,加上一些个性化设置而生成。举例来说,你可以在 Ubuntu 的 image 基础上,往里面加入 Apache 服务器,形成你的 image。

由于 Docker 官方提供的 image 文件,都放在library组里面,所以它的是默认组,可以省略。
因此,上面的命令docker image pull library/hello-world可以写成下面这样docker image pull hello-world

docker 启动:

docker container run hello-world
docker container run -it ubuntu bash

docker手动终止

docker container kill [containID]
容器:

image是模板, container是实例, image必须运行在container中, 也就是说,一旦容器生成,就会同时存在两个文件: image 文件和容器文件。而且关闭容器并不会删除容器文件,只是容器停止运行而已.

# 列出本机正在运行的容器
$ docker container ls

# 列出本机所有容器,包括终止运行的容器
$ docker container ls --all

# kill 手动终止container
docker container  kill [containerID]

#终止运行的容器文件,依然会占据硬盘空间,可以使用docker container rm命令删除。
docker container rm [containerID]

#添加--rm参数, 在容器终止运行之后自动删除容器文件
 docker container run --rm -p 8000:3000 -it koa-demo /bin/bash

docker container run命令是新建容器,每运行一次,就会新建一个容器,同样的命令运行两次,就会生成两个一模一样的容器文件。如果希望重复使用容器,就要使用docker container start命令,它用来启动已经生成、已经停止运行的容器文件。

#启动
docker container start [containerID]

#结束
bash container stop [containerID]

查看容器日志:docker container logs
docker container logs命令用来查看 docker 容器的输出,即容器里面 Shell 的标准输出。如果docker run命令运行容器的时候,没有使用-it参数,就要用这个命令查看输出

docker container logs [containerID]

docker container exec
docker container exec命令用于进入一个正在运行的 docker 容器。如果docker run命令运行容器的时候,没有使用-it参数,就要用这个命令进入容器。一旦进入了容器,就可以在容器的 Shell 执行命令了。

docker container exec -it [containerID] /bin/bash

docker container cp
docker container cp命令用于从正在运行的 Docker 容器里面,将文件拷贝到本机。下面是拷贝到当前目录的写法。

docker container cp [containID]:[/path/to/file] .
Dockerfile

Dockerfile 文件是一个文本文件,用来配置 image.Docker 根据 该文件生成二进制的 image 文件。

FROM node:8.4
COPY . /app
WORKDIR /app
RUN npm install --registry=https://registry.npm.taobao.org
EXPOSE 3000
CMD node demos/01.js

RUN命令与CMD命令的区别在哪里:
RUN命令在 image 文件的构建阶段执行,执行结果都会打包进入 image 文件
CMD命令则是在容器启动后执行。另外,一个 Dockerfile 可以包含多个RUN命令,但是只能有一个CMD命令。
指定了CMD命令以后,docker container run命令就不能附加命令了(比如前面的/bin/bash),否则它会覆盖CMD命令。现在,启动容器可以使用下面的命令。

发布image文件

发布image文件

docker image push [username]/[repository]:[tag]

image仓库地址:
打开/etc/default/docker文件(需要sudo权限),在文件的底部加上一行

DOCKER_OPTS="--registry-mirror=https://registry.docker-cn.com"
$ sudo service docker restart
##待验证
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值