Docker部署Minio S3第三方存储
你不要着急,你先去读你的书,我去看我的电影,总有一天,我们会窝在一起,读同一本书,看同一部电影。
安装Docker
1、选择要安装的平台
Docker要求CentOS系统的内核版本高于3.10
uname -r #通过 uname -r 命令查看你当前的内核版本
安装文档地址
https://docs.docker.com/engine/install/centos/
2、选择要安装的操作系统
3、首先卸载已安装的Docker
使用Root权限登录 Centos。确保yum包更新到最新。
sudo yum update
如果你的操作系统没有安装过Docker , 就不需要执行卸载命令。
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
4、建立仓库
安装Docker所需要的一些工具包
sudo yum install -y yum-utils
建立Docker仓库 (映射仓库地址)
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
5、安装Docker引擎
sudo yum install docker-ce docker-ce-cli containerd.io
6、启动Docker
sudo systemctl start docker
7.设置docker镜像仓库
有时候,我们pull
镜像的时候非常慢,所以需要设置一下国内的镜像仓库作为下载源
第一步:新建或编辑daemon.json
vi /etc/docker/daemon.json
第二步:daemon.json中编辑如下
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
第三步:重启docker
systemctl restart docker.service
第四步:执行docker info查看是否修改成功
docker info
以下列举出国内的几个下载地址:
1.网易
http://hub-mirror.c.163.com
2.Docker中国区官方镜像
https://registry.docker-cn.com
3.中国科技大学
https://docker.mirrors.ustc.edu.cn
4.阿里云容器服务
https://cr.console.aliyun.com/
首页点击“创建我的容器镜像” 得到一个专属的镜像加速地址,类似于“https://1234abcd.mirror.aliyuncs.com”
8.安装docker-compose
Linux 上我们可以从 Github 上下载它的二进制包来使用,最新发行的版本地址:https://github.com/docker/compose/releases。
运行以下命令以下载 Docker Compose 的当前稳定版本:
$ sudo curl -L "https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
要安装其他版本的 Compose,请替换 v2.2.2。
Docker Compose 存放在 GitHub,不太稳定。
你可以也通过执行下面的命令,高速安装 Docker Compose。
curl -L [https://get.daocloud.io/docker/compose/releases/download/v2.4.1/docker-compose-](https://link.zhihu.com/?target=https%3A//get.daocloud.io/docker/compose/releases/download/v2.4.1/docker-compose-)`uname -s`-`uname -m` > /usr/local/bin/docker-compose
将可执行权限应用于二进制文件:
$ sudo chmod +x /usr/local/bin/docker-compose
创建软链:
$ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
测试是否安装成功:
$ docker-compose version
cker-compose version 1.24.1, build 4667896b
9.docker常用命令
基本命令
-
启动 Docker 服务:
systemctl start docker
-
检查 Docker 版本:
docker --version
镜像操作
-
从 Docker Hub 拉取镜像:
docker pull <image_name>
例如:
docker pull nginx
-
列出本地镜像:
docker images
-
删除本地镜像:
docker rmi <image_name>
-
构建镜像:
docker build -t <image_name> .
容器操作
-
运行容器:
docker run -it --name <container_name> <image_name>
例如:
docker run -it --name my_nginx nginx
-
列出运行中的容器:
docker ps
-
列出所有容器(包括停止的容器):
docker ps -a
-
停止容器:
docker stop <container_name>
-
启动已停止的容器:
docker start <container_name>
-
删除容器:
docker rm <container_name>
-
进入运行中的容器:
docker exec -it <container_name> /bin/bash
数据卷操作
-
创建数据卷:
docker volume create <volume_name>
-
列出数据卷:
docker volume ls
-
删除数据卷:
docker volume rm <volume_name>
网络操作
-
创建网络:
docker network create <network_name>
-
列出网络:
docker network ls
-
删除网络:
docker network rm <network_name>
其他操作
-
查看容器日志:
docker logs <container_name>
-
检查 Docker 系统资源使用情况:
docker system df
安装Minio
1.查找Minio镜像
2.拉取镜像
#下载最新版Minio镜像
docker pull minio/minio
#下载指定版本的Minio镜像
docker pull minio/minio:版本号
温馨提示:还是选择最新原则,不要选择一些乱七八糟的旧版本,很难维护
3.查看镜像
docker images
4.创建目录
一个用来存放配置,一个用来存储上传文件的目录
启动前需要先创建Minio外部挂载的配置文件(/usr/local/src/minio/config),和存储上传文件的目录( /usr/local/src/minio/data)
mkdir -p /usr/local/src/minio/config
mkdir -p /usr/local/src/minio/data
5.创建Minio容器并运行
docker run -p 9000:9000 -p 9090:9090 \
--net=host \
--name minio \
-d --restart=always \
-e "MINIO_ACCESS_KEY=admin" \
-e "MINIO_SECRET_KEY=admin" \
-v /usr/local/src/minio/data:/data \
-v /usr/local/src/minio/config:/root/.minio \
minio/minio server \
/data --console-address ":9090" -address ":9000"
这条 Docker 命令用于运行 MinIO 服务器,该服务器是一种高性能的对象存储系统,类似于 Amazon S3。这条命令在本地机器上设置和运行 MinIO 实例。下面是对每个参数的详细解释:
-
docker run
:启动一个新的 Docker 容器。 -
-p 9000:9000 -p 9090:9090
:将本地机器的端口 9000 和 9090 映射到容器的端口 9000 和 9090。这使得你可以通过本地机器的这两个端口访问 MinIO 服务和控制台。 -
--net=host
:使用主机的网络设置。这意味着容器将使用与主机相同的网络堆栈,使网络配置更简单,但会减少一些容器化带来的隔离好处。 -
--name minio
:为这个容器指定一个名称,叫做minio
。 -
-d
:在后台运行容器(即“分离模式”)。 -
--restart=always
:确保容器在退出或主机重启后自动重新启动。 -
-e "MINIO_ACCESS_KEY=admin"
和-e "MINIO_SECRET_KEY=admin"
:设置环境变量,用于指定 MinIO 的访问密钥和秘密密钥,这些密钥将用于访问和管理 MinIO 服务。 -
-v /usr/local/src/minio/data:/data
:将本地路径/usr/local/src/minio/data
挂载到容器内的/data
目录。这是 MinIO 存储数据的位置。 -
-v /usr/local/src/minio/config:/root/.minio
:将本地路径/usr/local/src/minio/config
挂载到容器内的/root/.minio
目录。这是 MinIO 的配置文件存放的位置。 -
minio/minio
:指定使用的 Docker 镜像,这里是官方的 MinIO 镜像。 -
server /data
:指定容器启动时要运行的命令,这里是启动 MinIO 服务器并指定数据存储目录为/data
。 -
--console-address ":9090"
:指定 MinIO 控制台的地址和端口,这里是:9090
,表示在所有网络接口上监听端口 9090。 -
-address ":9000"
:指定 MinIO 服务的地址和端口,这里是:9000
,表示在所有网络接口上监听端口 9000。
总结起来,这条命令是在本地机器上启动一个 MinIO 容器,数据存储在 /usr/local/src/minio/data
,配置文件位于 /usr/local/src/minio/config
,MinIO 服务在端口 9000 上运行,控制台在端口 9090 上运行,并且访问密钥和秘密密钥都设为 admin
。