Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。 Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。 容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
基于MacOS安装
macOS 我们可以使用 Homebrew 来安装 Docker。
brew install --cask --appdir=/Applications docker
在桌面可以看到已安装完成的docker小图标,双击运行docker。
镜像加速
鉴于国内网络问题,后续拉取 Docker 镜像十分缓慢,我们可以需要配置加速器来解决,我使用的是网易的镜像地址http://hub-mirror.c.163.com。
查看是否配置成功:
docker info
Docker容器使用
Docker Hello World
docker run ubuntu:15.10 /bin/echo "Hello world"
获取镜像
docker pull ubuntu
启动容器
docker run -it ubuntu /bin/bash
参数为以命令行模式进入该容器
启动已停止运行的容器
docker ps -a
后台运行
docker run -itd --name ubuntu-test ubuntu /bin/bash
运行一个web应用
我们将在docker容器中运行一个 Python Flask 应用来运行一个web应用。
docker pull training/webapp
docker run -d -P training/webapp python app.py
-d:让容器在后台运行。 -P:将容器内部使用的网络端口随机映射到我们使用的主机上。
查看 WEB 应用容器
我们可以直接通过浏览器访问该端口:
我们也可以通过 -p 参数来设置不一样的端口:
docker run -d -p 5000:5000 training/webapp python app.py
查看 WEB 应用程序日志
docker logs -f [id或者名字]
查看WEB应用程序容器的进程
docker top
检查 WEB 应用程序
docker inspect
停止 WEB 应用容器
docker stop
重启WEB应用容器
docker start
移除WEB应用容器
docker rm
Docker 镜像使用
列出镜像列表
docker images
获取一个新的镜像
docker pull
查找镜像
docker search httpd
拖取镜像
docker pull
删除镜像
docker rmi
Docker安装Redis
取最新版的 Redis 镜像:docker pull redis:latest
查看本地镜像:docker images
运行容器:docker run -itd --name redis-test -p 6379:6379 redis
安装成功:docker ps