镜像


--DOCKER镜像类似虚拟机镜像,是运行DOCKER容器的基础。

1、获取镜像
sudo docker pull ubuntu:18.04
或者直接下载最新的
sudo docker pull ubuntu

查看linux版本:cat /proc/version 查看ubuntu版本cat /etc/issue (简单) cat /etc/lsb-release(具体)

获取镜像报错repository does not exist or may require 'docker login'
解决方法:先登录
docker login

2、利用镜像创建容器,运行bash命令
sudo docker run -it ubuntu bash

3、查看镜像信息
docker images
docker image ls

查看本机上存在的所有容器
docker ps -a

4、使用docker tag 为本地镜像添加新的标签
sudo docker tag ubuntu:latest myubuntu:latest

5、使用inspect查看详细信息
sudo docker inspect ubuntu:18.04

6、使用history查看景象历史
sudo docker history ubuntu:18.04

7、搜索镜像
sudo docker search --filter=is-official=true nginx
sudo docker search --filter=stars=4 tensorflow

8、删除镜像
sudo docker rmi myubuntu:latest 或者 docker image rm myubuntu:latest
当一个镜像拥有多个标签时,只是删除标签,不会删除镜像

9、清理镜像
docker image prune
-a 删除所有无用 -f强制删除

10、创建镜像
sudo docker commit -m "Added a new file" -a "DOCKER Newbee" 6efe249449c0 test:0.1

还可以基于本地模板导入
基于Dockerfile创建

11、存出镜像
docker save -o ubuntu_18.04.tar ubuntu:18.04

12、载入镜像
docker load < ubuntu_18.04.tar

13、上传镜像
docker tag test:latest user/test:latest
docker push user/test:latest

容器

--容器可以当做是虚拟机,是docker的独立运行单元。

1、创建容器
sudo docker create -it ubuntu:latest

启动容器:docker start af

2、创建并启动容器
docker run -it ubuntu:latest /bin/bash

3、守护状态运行( -d )
sudo docker run -d ubuntu /bin/sh -c "while true; do echo hello world; sleep 1; done"

4、查看容器输出
sudo docker logs

5、暂停容器
docker pause test

通过sudo docker unpause test 来运行暂停的容器

6、终止容器
docker stop test (会先发送终止信号,再终止),可以用 docker kill test直接终止

7、自动清除掉所有处于停止状态的容器
docker container prune

8、进入容器
sudo docker attach test /bin/bash
sudo docker exec test /bin/bash

9、删除容器
sudo docker rm -f test

10、导出容器
sudo docker export -o test_for_run.tar test 或者 sudo docker export test > test_for_run.tar

11、导入容器
sudo docker import test_for_run.tar - test/ubuntu:v1.0

12、查看容器详情
sudo docker container inspect test

13、查看容器内进程
docker top test

14、查看统计信息
docker stats test

15、容器与主机间复制文件
sudo docker cp source target

16、退出容器
Ctrl+P+Q (不停止退出)
exit(停止并退出)

仓库

分为公共仓库与私人仓库,可以从公共仓库下载镜像,然后运行docker容器,进行项目部署,再把部署后的容器打包为镜像,并提加到私人仓库,从而做到一次配置,批量部署。
1、登陆i
docker login

2、从第三方镜像市场下载镜像
配置阿里云docker镜像加速器

配置加速器地址

root@nulige:~# vi /etc/docker/daemon.json

{
"registry-mirrors": ["https://alzgoonw.mirror.aliyuncs.com"]
}

重启服务

先安装daemon
sudo apt install daemon
root@nulige:~# systemctl daemon-reload
root@nulige:~# systemctl restart docker
root@nulige:~# systemctl status docker

然后
docker pull

3、搭建本地私有仓库
sudo docker run -d -p 5000:5000 -v /usr/docker/registry:/var/lib/registry registry:2

把镜像标记为私服ip地址下的镜像
sudo docker tag ubuntu:18.04 127.0.0.1:5000/test

然后可以通过docker push 上传镜像到仓库

通过 curl http://127.0.0.1:5000/v2/_catalog
验证是否上传成功