docker分为两个版本 docker CE(社区版/个人版) 和 docker EE (企业版)
docker官方安装网址:
https://docs.docker.com/install/linux/docker-ce/centos/#upgrade-docker-ce
安装 dockerCE 需要 centOS 7的版本
centOS7安装
1、卸载旧版本,docker旧版本被称为docker or docker-engine 如果已安装这些,需要先卸载因为其中是有依赖项的
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
如果yum报告里报告了没有安装这些软件包 则可以进行安装
2、安装依赖包:
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
2.1、添加docker软件安装包源:
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
2.2、更新yum包索引:
yum makecache fast
2.3、安装docker CE
sudo yum install docker-ce
2.4、启动docker服务
systemctl start docker.service
2.5、卸载docker
2.5.1、 卸载docker包,主机上的图像,容器,卷或自定义配置文件不会自动删除
sudo yum remove docker-ce
2.5.2、删除所有的图像,容器和卷
sudo rm -rf /var/lib/docker
------------------------------------------------------------------------------------------
docker info 容器列表
docker pull nginx(容器id/image) 下载镜像
docker inspect nginx(容器id/image) 查看更详细的关于某一个容器的信息
docker ps 查看所有正在运行中的容器列表
------------------------------------------------------------------------------------------
问题
怎么用docker把源代码打成镜像
docker是开源容器引擎,一种操作系统的虚拟化技术,依赖Linux内核特性:namespace(资源隔离)和Cgroups(资源限制),一个简单的应用程序打包工具。
提供简单的应用程序打包工具,开发人员和运维人员职责逻辑分类(告别运维人员当背锅侠的时代),多环境保持一致性。鲸鱼是docker,集装箱是container。
docker是开源容器引擎
docker一种Linux虚拟化技术
docker基于Linux内核的“资源隔离”和“资源限制”
docker是一种简单的应用程序打包工具
镜像是一个只读文件,是一个只读文件堆(打包好的 只读文件)
---------------
- Volumes方式下:容器内的数据被存放到宿主机(linux)一个特定的目录下(/var/lib/docker/volumes/)。这个目录只有Docker可以管理,其他进程不能修改。如果想持久保存容器的应用数据,Volumes是Docker推荐的挂载方式。
- Bind mounts方式下:容器内的数据被存放到宿主机文件系统的任意位置,甚至存放到一些重要的系统目录或文件中。除了Docker之外的进程也可以任意对他们进行修改;
- tmpfs方式下:容器的数据只会存放到宿主机的内存中,不会被写到宿主机的文件系统中,因此不能持久保存容器的应用数据。
---------------
Docker Swarm是什么?
Swarm是Docker官方提供的一款集群管理工具,其主要作用是把若干台Docker主机抽象为一个整体,并且通过一个入口统一管理这些Docker主机上的各种Docker资源。Swarm和Kubernetes比较类似,但是更加轻,具有的功能也较kubernetes更少一些。
Docker Compose是什么?
Compose是一个定义和管理多容器的工具,使用Python语言编写。使用Compose配置文件描述多个容器应用的架构,比如使用什么镜像、数据卷、网络、映射端口等;然后 一条命令管理所有服务,比如启动、停止、重启等。
docker-compose是一个方便部署的工具,用docker我们只能同时部署一个容器,用了docker-compose可以同时部署一套容器,大大提高效率