docker run -i -t ubuntu
/bin/bash
进入
bash
-t 分配伪终端 -i 让容器标准输出保持打开
docker search mysql 搜索镜像
docker rmi ubuntu
/id
根据标签或
id
删除镜像
docker
rm
e81 删除容器
docker attach 容器
id
或 docker attach 容器name 重新进入未关闭的容器
|
镜像
创建镜像三种方法
基于镜像容器创建
-a 作者信息
-m 提交消息
-p 提交时暂停容器
1
|
docker commit -m
"Add new File"
-a
"Docker NewBee"
a984984
test
提交一个镜像 返回一个新容器
id
test
为容器名
|
基于本地模板导入
1
|
sudo
cat
ubuntu_16.04.
tar
.gz | docker
import
- ubuntu:16.04
|
基于DockerFile创建
1
2
|
docker save -o ubuntu_16.04.
tar
ubuntu:16.04 存入镜像
docker load --input ubuntu_16.04.
tar
载入镜像
|
上传镜像
1
|
docker push
|
容器
新建容器
1
2
3
4
|
docker create -it ubuntu:latest 创建容器
docker
ps
-a 查看容器
ctrl + d 退出并关闭容器
ctrl + p +q 退出但不关闭容器
|
新建并启动容器
1
2
|
docker run ubuntu
/bin/echo
'hello world'
执行完后容器自动终止
docker run 等价于 docker run 再 docker start 命令
|
守护运行态
1
2
3
4
|
-d 参数实现守护进程
docker run -d ubuntu
/bin/sh
-c
"while true; do echo hello world; sleep 1 ;done"
docker
ps
查看
docker logs ce5 查看容器输出信息
|
终止容器
1
2
3
4
|
docker stop ce5 终止容器
docker
ps
-a -q 查看处于终止状态的容器ID信息
docker start ce5 启动终止的容器
docker restart ce5 重新启动正在运行的容器
|
进入容器
1
2
3
4
5
|
docker run -idt ubuntu
docker
ps
docker attach names 多个容器同时使用时,当一个窗口因命令阻塞时,其他窗口也无法操作
docker
exec
-ti
id
/bin/bash
使用-it时,类似console界面,不会像attach因为退出,导致整个容器退出
这种方式可以替代
ssh
nenter nsinit 方式,在容器内进行操作
|
删除容器
1
2
3
4
|
docker
rm
删除处于终止状态的容器
-f 强制终止并删除
-l 删除容器的链接,但保留容器
-
v
删除容器挂在的数据卷
|
导入和导出容器
1
2
3
4
5
|
docker
export
id
>demo.
tar
cat
demo.
tar
|
sudo
docker
import
- ubuntu:16.04
docker images
docker load 于 docker
import
都可以文件到镜像库,区别:load 保留完整记录,体积大,
import
快照
导入时可以指定元数据信息
|
仓库
1
2
3
4
5
6
|
docker run -p 5000:5000 registry
docker images
docker tag ubuntu:16.04 localhost:5000
/ubuntu
:16.04
docker push localhost:5000
/ubuntu
:16.04
curl
curl http:
//60
.205.215.243:5000
/v2/_catalog
查看上传的镜像
|