#启动docker
systemctl start docker
#关闭docker
systemctl stop docker
#查看docker的运行状态
systemctl status docker
#查看docker镜像
docker images
#启动jenkins
systemctl start jenkins
#查看jenkins状态
systemctl status jenkins
#查看所有的容器
docker container ls -a
#确认是否重启成功
$ ps -ef | grep docker
or
$ ps -A|grep docker
docker images|grep mysql
查看文件夹的命令
ls –nd
授权
sudo chown –R 1000:1000 jenkins/
搜索镜像
docker search <image>
# 在docker index中搜索image
下载镜像
docker pull <image>
# 从docker registry server 中下拉image
查看镜像
docker images:
# 列出images
docker images -a
# 列出所有的images(包含历史)
docker rmi <image ID>:
# 删除一个或多个image
配置文件 /etc/sysconfig/docker
chkconfig docker on
# 加入开机启动
service docker start
# 启动docker服务
//查看docker上面开发了哪些端口
systemctl status docker
基本信息查看
docker version
# 查看docker的版本号,包括客户端、服务端、依赖的Go等
docker info # 查看系统(docker)层面信息,包括管理的images, containers数等
docker pull centos 下载
docker images [ centos ] 查看
#进入容器里面
docker run -it nginx:latest /bin/bash
#将容器备份成镜像
用centos镜像创建一个名称为mycentos的容器
docker run -id --name=mycentos centos:7
#查看所有容器
docker ps -a
#将容器mycentos保存为镜像
docker commit mycentos mycentos_i
#将原有的镜像备份成本地压缩文件
docker save -o mycentos.tar mycentos_i
mycentos.tar就是镜像mycentos_i的备份文件
#删除mycentos_i镜像
docker rmi mycentos_i
然后加载刚刚备份的mycentos.tar文件
docker load -i mycentos.tar
#示例
docker save -o nginx.tar nginx:latest
或
docker save > nginx.tar nginx:latest
其中-o和>表示输出到文件,nginx.tar为目标文件,nginx:latest是源镜像名(name:tag)
示例
docker load -i nginx.tar
或
docker load < nginx.tar
其中-i和<表示从文件输入。会成功导入镜像及相关元数据,包括tag信息
#查看容器里面相关信息
docker inspect container_name | grep Mounts -A 20
#查看容器日志
docker logs containterId
#启动容器 使用镜像 nginx:latest,以后台模式启动一个容器,将容器的 80 端口映射到主机的 80 端口,主机的目录 /data 映射到容器的 /data。
eg: docker run -p 80:80 -v /data:/data -d nginx:latest
Docker容器
- 镜像(image)和容器(container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。
容器的实质是进程,但与直接在宿主执行的进程不同,容器进程运行于属于自己的独立的命名空间。因此容器可以拥有自己的root文件系统、自己的网络配置、自己的进程空间,甚至自己的用户ID空间。容器内的进程是运行在一个隔离的环境里,使用起来,就好像是在一个独立宿主的系统下操作一样。这种特性使容器封装的应用比直接在宿主运行更加安全。
前面讲过镜像使用的是分层储存,容器也是如此。每一个容器运行时,是以镜像为基础层,在其上创建一个当前容器的存储层,可以称这个味容器运行时读写而准备的存储层为容器存储层。
容器存储层的生存周期和容器一样,容器消亡时,容器存储层也随之消亡。因此,任何保存于容器存储层的信息都会随容器删除而丢失。
按照Docker最佳实践的要求,容器不应该向其存储层写入任何数据,容器存储层要保持无状态化。所有的文件写入操作,都应该使用数据卷(volume)、或者绑定宿主目录,在这些位置的读写会跳过存储层,直接对宿主(或网络存储)发生读写,其性能和稳定性更高。
数据卷的生存周期独立于容器,容器消亡,数据卷不会消亡。因此,使用数据卷后,容器删除或者重新运行之后,数据却不会丢失。
根据镜像创建容器
docker run -d --name -p 9090:8080 my-tomcat tomcat
查看所有的container
docker ps -a
包含已经退出的容器
删除container
docker rm containerid
docker rm -f $(docker ps -a) 删除所有containe
r
进入到一个container中
docker exec -it container bash
查看某个container的日志
docker logs container
查看容器资源使用情况
docker stats
查看容器详情信息
docker inspect container
停止/启动容器
docker stop/start container
查看linux里面docker镜像占用磁盘大小
docker system df -v
容器,数据卷占用的磁盘空间
docker system df
linux 当前目录里面的文件大小
du -h -x --max-depth=1