Docker使用经验_安装配置

内网安装参考
离线安装
https://www.e-learn.cn/content/java/451760
https://www.2cto.com/kf/201809/778643.html
--------------------------------------------------------安装包列表

libtool-ltdl-2.4.2-22.el7_3.x86_64.rpm
systemd-devel-219-57.el7.x86_64.rpm
systemd-libs-219-57.el7.x86_64.rpm
device-mapper-1.02.146-4.el7.x86_64.rpm
device-mapper-libs-1.02.146-4.el7.x86_64.rpm
docker-ce-17.03.2.ce-1.el7.centos.x86_64.rpm
docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch.rpm
lz4-1.7.5-1.el7.x86_64.rpm
--------------------------------------------------------

rpm下载地址 https://pkgs.org/download
--------------------------------------------------------rpm安装

rpm -ivh lz4-1.7.5-1.el7.x86_64.rpm
rpm -ivh libtool-ltdl-2.4.2-22.el7_3.x86_64.rpm
rpm -ivh docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch.rpm docker-ce-17.03.2.ce-1.el7.centos.x86_64.rpm --nodeps --force

运行docerd
/usr/bin/dockerd
失败就运行ldd /usr/bin/dockerd找出需要的包继续

--------------------------------------------------------
在线可以yum安装
--------------------------------------------------------

迁移默认目录
1、停止docker服务。
systemctl stop docker; //每个liunx版本的命令不一样。
2、创建新的docker目录,执行命令df -h,找一个大的磁盘。
我在 /dev目录下面建了 /dev/docker/lib目录,执行的命令是:mkdir -p /dev/docker/lib
3、迁移/var/lib/docker目录下面的文件到 /dev/docker/lib下面
cp -R /var/lib/docker/* /dev/docker/lib/
注意:如果文件内容很多的话,为了确保成功最好是一个文件一个文件的拷贝。如果在拷贝过程中报“设备上没有空间”的错误,就使用mv剪切。
4、修改docker配置(/etc/systemd/system/docker.service.d/devicemapper.conf),在文件末添加 --graph=/dev/docker/lib
                           devicemapper.conf文件的内容如下:
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd --insecure-registry=私服地址 --graph=/dev/docker/lib
注意:如果/etc/systemd/system/docker.service.d/devicemapper.conf,这个路径找不到的话,就新建,新建之后加入内容,没有私服地址的话就可以去掉”--insecure-registry=私服地址”。
 5、重载配置,重启docker
systemctl daemon-reload;
systemctl restart docker;
systemctl enable docker;
 6、启动成功后,确定容器没问题后删除/var/lib/docker/目录中的文件,然后就OK了。

---------------------------------------------------
安装镜像
docker build -t g1/centos7.4:1708 .
docker images #查看镜像 docker images -a
docker rmi d26bbd442312#删除镜像 必须先删除相应容器
docker ps -a #查看容器进程
docker rm 70cbffeec0b3 #删除容器
docker run -t -i g1/centos7.4:1708 /bin/bash #运行镜像
docker cp more.log 28675a259296:/user #传送文件
docker attach 28675a259296 #进入
Ctrl+P+Q进行退出容器不关闭容器
docker ps -a
docker restart 28675a259296
docker stop 28675a259296
docker start 28675a259296
关闭进程

关闭docker service docker stop
关闭docker systemctl stop docker
操作系统关闭 ps axf | grep docker | grep -v grep | awk '{print "kill -9 " $1}' | sudo sh

Docker镜像的导入导出

导入导出
docker commit -m "gbase" -a "g1" 28675a259296 20181212centos7 #生成新镜像
docker save -o 20181210image.tar 20181212centos7
---------------------------------------------------------------
能使用systemctl命令启动方式
docker run -itd --privileged=true centos7.4etl:latest /usr/sbin/init
进入方式
docker exec -it 28675a259296 bash

原文地址:https://www.cnblogs.com/Babylon/p/10190596.html