Debian / Ubuntu / CentOS 简单安装 Docker 教程:
那么下面,我们就一起来看看,怎么样在 Linux 上安装 Docker 吧!教程以 Debian、Ubuntu 作为例子,其实 CentOS、Fedora 类也基本一样。大家动动手就能轻松搞定 Docker,并用它来部署安装各种各样的项目了。
#切换到 Root 账户
su root
# 建议先升级一下系统 (Ubuntu / Debian 系)
apt-get update
apt-get upgrade
# 如果你是 CentOS、红帽系列则使用:
yum update
yum upgrade
# 安装 Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
Docker 更换配置国内镜像:
使用 Docker 构建和部署应用程序时,几乎都需要下载一些基础镜像和依赖库。但由于国内网络比较特殊,想要从官方的 Docker Hub 仓库下载会极其缓慢,甚至会出现连接超时、无法下载等情况。为了解决网络问题,我们需要配置使用国内的镜像仓库,来加快镜像的下载速度。
创建或修改 /etc/docker/daemon.json 文件
vim /etc/docker/daemon.json
json 文件的内容如下:
{
"registry-mirrors": [
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com",
"https://dockerproxy.com",
"https://docker.nju.edu.cn"
]
}
在国内以前多个 Docker 镜像源可以选择,比如有:网易镜像、百度云镜像、不过陆陆续续已经关闭掉了,有点可惜,现在也没有什么可以推荐的。
修改之后重启 Docker 服务:
sudo systemctl daemon-reload
sudo systemctl restart docker
Docker 常用操作命令:
安装 Docker 之后,你就可以使用一些命令进行操作了。
下载并运行镜像:
docker run -d -p 6379:6379 -v /host/dir:/my/test --name nginx nginx:latest
# 示例的参数解释
# -d 表示后台运行容器(守护式运行)
# -p 宿主机端口:docker容器端口,将容器端口映射到宿主机上,通过宿主机访问内部端口
# -v 将宿主机的目录挂载到容器中去,例子中是将主机的 /host/dir 挂载到容器中的 /my/test
# --name 要运行的容器起的名字(--name xxx 与 --name=xxx 是一个意思)
# nginx:latest 指定下载的镜像以及版本
查看所有容器 ID:
docker ps -aq
启动、停止、杀死、重启一个容器
docker start Name或者ID
docker stop Name或者ID
docker kill Name或者ID
docker restart name或者ID
进入容器内部,执行任意的命令:
#docker exec :在运行的容器中执行命令
# -d :分离模式: 在后台运行
# -i :即使没有附加也保持STDIN(标准输入) 打开,以交互模式运行容器,通常与 -t 同时使用;
# -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
docker exec -it 容器ID /bin/bash
停止所有容器:
docker stop $(docker ps -a -q)
查看所有已下载的镜像
docker images
删除指定镜像
docker rmi <image id>
从容器复制文件到宿主机:
docker cp nginx:/web/js/file.js /host/path
# docker cp 容器名:容器文件的路径 宿主机的路径
从宿主机复制文件到容器:
docker cp /host/path/file.js nginx:/web/js
# docker cp 宿主机的文件 容器名:容器里的路径
Docker 的操作有很多,大家可以查看官方的文档或找找网上的教程。一些如 群晖 NAS、QNAP 等都会提供类似 Container Station 等图形界面方便操作。你也可以在 Linux 上部署 Portainer 等 WEB 界面来使用。当然了,如果喜欢,多学习一下 Docker 的命令行操作其实也是不错的。
安装docker
curl -sSL https://get.daocloud.io/docker | sh
安装docker-compose
curl -L https://get.daocloud.io/docker/compose/releases/download/v2.1.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
卸载docker
sudo apt-get remove docker docker-engine
rm -fr /var/lib/docker/
CentOS 关闭防火墙
systemctl start supervisord
systemctl disable firewalld
systemctl stop firewalld