docker容器和镜像同点
1 镜像(Image)
Docker统一文件系统(the union file system)
镜像(Image)就是一堆只读层(read-only layer)的统一视角。
2 容器(container)
容器(container)的定义和镜像(image)几乎一模一样,也是一堆层的统一视角,唯一区别在于容器的最上面那一层是可读可写的。
容器 = 镜像 + 可读层。
一个运行态容器(running container)被定义为一个可读写的统一文件系统加上隔离的进程空间和包含其中的进程。
docker容器和镜像异点
简而言之,容器 = 镜像 + 读写层。
镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。
什么是 Docker 容器?
Docker 容器 在应用程序层创建抽象并将应用程序及其所有依赖项打包在一起。这使我们能够快速可靠地部署应用程序。任何容器化应用程序都可以在任何平台上运行,容器可视为 Docker 镜像的运行时实例。
什么是 DockerFile?
Dockerfile 是一个文本文件,其中包含我们需要运行以构建 Docker 映像的所有命令。Docker 使用 Dockerfile 中的指令自动构建镜像。我们可以docker build
用来创建按顺序执行多个命令行指令的自动构建。
docker命令
查看所有容器:docker ps -a
查看运行的容器:docker ps
要终止 Docker 容器,请使用以下命令:docker kill <container_id>
要启动 Docker 容器,请使用以下命令: docker start <container_id>
要停止 Docker 容器,请使用以下命令:docker stop <container_id>
docker的守护进程查看 systemctl status docker
Docker Registry配置和查看 cat /etc/docker/daemon.json
Docker 镜像创建 Docker 容器?docker run -it -d <image_name>
3.tar -zxvf docker-19.03.9.tgz #解压
4、将docker注册为service
cat /etc/systemd/system/docker.service
vi /etc/systemd/system/docker.service
5.启动
chmod +x /etc/systemd/system/docker.service #添加文件权限并启动docker
systemctl daemon-reload #重载unit配置文件
systemctl start docker #启动Docker
systemctl enable docker.service #设置开机自启
开机自启 redis容器 docker命令
-
创建Redis容器(如果尚未创建):
使用
docker run
命令创建Redis容器。在这个命令中,你可以指定Redis的镜像名称、容器名称、端口映射和其他配置选项。例如:docker run -d --name my-redis-container -p 6379:6379 redis
这将创建一个名为
my-redis-container
的Redis容器,将容器的6379端口映射到主机的6379端口,并在后台运行容器。 -
设置容器的重启策略:
使用
docker update
命令设置容器的重启策略。你可以选择在容器停止时自动重启,以便在系统启动时重新启动。docker update --restart=always my-redis-container
这将配置Redis容器在任何情况下都会自动重启,包括在系统启动时。
取消容器开机自启 docker命令
docker update --restart=no <container_id>
6.验证
systemctl status docker #查看Docker状态
docker -v #查看Docker版本
Docker的应用场景
- Web 应用的自动化打包和发布。
- 自动化测试和持续集成、发布。
- 在服务型环境中部署和调整数据库或其他的后台应用。
- 从头编译或者扩展现有的 OpenShift 或 Cloud Foundry 平台来搭建自己的 PaaS 环境。