关于Docker:linux
Docker 是一个开源项目,为开发者和系统管理员提供了一个开放的平台,在任何地方经过打包和运行应用程序做为一个轻量级的容器。Docker 在软件容器内自动部署应用程序。Docker 最开始由 Solomon Hykes 做为 dotCloud 一个内部开发项目,一个企业级的 PaaS (platform as a service 服务平台),该软件如今由 Docker 社区和 Docker 公司维护,更多 Docker 信息你能够访问:https://docs.docker.com/。docker
Docker的关键词:shell
a.Docker Imagesubuntu
Docker image 是 Docker container 最基本的模板。image 通用容器使系统和应用易于安装, Docker image 是用来运行的容器,你能够找到许多 images (多种操做系统和软件已经被安装好了的 Docker)在这里 https://hub.docker.com/.centos
b.Docker Container安全
Docker 容器(Docker Container)是一个 Image,在运行的 Docker image 上读取和写入。Docker 是一个联合的文件系统做为容器后台,容器的任何变化,都将被保存在一个基本 image 新的层上。咱们安装应用程序的层就是容器。每一个在主机机上运行的容器都是独立的,所以,提供了一个安全的应用平台。bash
c.Docker Registry服务器
Docker registry 是为 Docker images 提供的库。它提供了公共和私有库。公共 Docker 库被叫作 Docker Hub。这里咱们可以上传 push 和 pull 咱们本身的 images.this
接下来咱们就开始在Ubuntu系统上安装Dockerspa
运行安装Docker的命令:
sudo apt-get install -y docker.io
等待安装完毕,使用下面命令启动Docker
sudo systemctl start docker
运行系统引导时启用Docker
sudo systemctl enable docker
若是想查看docker的版本 输入如下命令
docker version
接下来咱们讲下Docker的基本用法
在本节中,我将向您介绍 Docker 命令的经常使用选项。例如如何下载一个 docker image,打造一个容器,以及如何访问容器。
要建立一个新的容器,你应该选择一个基本 image 的操做系统,例如启动 Ubuntu 或者 CentOS 或其余系统。您能够搜索一个基本 image 使用 Docker 搜索命令:
docker search ubuntu
该命令将显示全部 ubuntu images,你能够本身尝试一下搜索 centos Images。
下面咱们base image到咱们的服务器中
docker pull ubuntu
如今能够经过命令来查看全部已下载的images:
docker images
Ubuntu 镜像从DockerHub/Docker Registry下载。下一步骤是建立从该镜像的容器。
要建立容器,可使用docker create 或 docker run
docker create ubuntu:14.04
docker create 命令会建立一个新的容器,但不会启动它。因此如今你须要使用运行命令:
docker run -i -t ubuntu:14.04 /bin/bash
此命令将建立并运行一个基于 Ubuntu14.04 镜像的容器,容器内并运行一个命令/bin/bash,您将在容器内自动运行命令。
当你输入 Exit 命令退出容器时,容器也是中止运行,若是你想容器在后台运行须要在命令后面添加 -d 参数。
docker run -i -t -d ubuntu:14.04 /bin/sh -c “while true; do echo hello world; sleep 1; done”
/bin/sh -c “while true; do echo hello world; sleep 1; done” this is bash script to echo “hello word” forever.
如今你能够看到容器在后台运行经过命令:
docker ps
若是你想从 bash 命令看日志结果,使用命令:
docker logs NAMES/ContainerID
怎样在后台访问容器 shell?这个命令将会链接你的容器 shell:
docker exec -i -t NAMES/ContainerID
你能够看到主机名和容器ID是相等的,这意味着你在容器shell内。当你在shell 上键入’exit`,会离开的shell,但容器仍在运行。
你会常常使用的另外一个命令是:
docker stop NAME/ContainerID
这将中止容器而不将其删除,这样你就能够用命令从新启动它:
docker start NAME/ContainerID
若是你想删除的容器,先中止它,而后用命令将其删除:
docker rm NAME/ContainerID