docker的基本使用
CentOS 系统 docker 安装
curl -fsSL https://get.docker.com | bash -s docker --mirror aliyun
启动docker
sudo systemctl start docker
打包 centos7.6 基础镜像
cd /
tar -cf system.tar bin dev lib64 media opt root snap var boot etc lib mnt sbin srv usr vmlinuz
导入镜像
cat system.tar | docker import - centos7:v5
docker 私有镜像仓库搭建
1、docker pull registry
2、docker run --name registry -d -p 5000:5000 --restart=always -v /opt/data/registry :/var/lib/registry registry
给镜像打一个tag
3、 docker tag centos7:v5 180.80.80.*:5000/centos7:v5
将镜像推送到镜像仓
4、docker push centos7:v5 180.80.80.*:5000/centos7:v5
到其他服务器拉取镜像
docker pull centos7:v5 180.80.80.*:5000/centos7:v5
启动该镜像
docker run -t -i 180.80.80.*9:5000/centos7:v5 /bin/bash
若需要将本地某目录下的文件加载到容器中,则:
docker run -it -v /opt:/opt 180.80.80.*:5000/centos7:v5 /bin/bash
拉取镜像时报如下错误:
Error response from deamon: Get https://180.80.80.*:5000/...
解决方式:
1、vi /etc/docker/deamon.json
将以下配置到文件中:
{
“insecure-registries”:["180.80.80.*:5000"]
}
这个列表中可以配置多个镜像仓库的IP地址
Dockerfile 定制镜像
1、cd /opt
2、touch Dockerfile
3 、vi Dockerfile
将需要定制的命令写入该文件中,具体命令参考:
https://www.runoob.com/docker/docker-dockerfile.html
4、 docker build -t test-web:v1 .
镜像的其他命令
镜像保存
docker save IMAGE ID >mydocker.tar
镜像迁移
scp mydocker.tar 180.80.80.*:/opt
镜像包导入
docker load < mydocker.tar
命名tag
docker tag IMAGE ID mydocker:2.0
查看镜像id
docker ps -a
docker image ls
进入某个特定的容器id
docker start acf784ad78e8
docker attach acf784ad78e8
删除容器
docker rm acf784ad78e8