docker将本地镜像推送到阿里云镜像仓库实现轻松部署

安装docker

1、检查内核版本,必须是3.10及以上
   uname -r
2、安装docker
   yum install docker
3、输入y确认安装
4、启动docker
   systemctl start docker
   docker -v
   Docker version 1.12.6, build 3e8e77d/1.12.6
5、开机启动docker
   systemctl enable docker
  Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service /usr/lib/systemd/system/docker.service.
6、停止docker

配置镜像加速

vi /etc/docker/daemon.json
{
  "registry-mirrors": ["https://*****.mirror.aliyuncs.com"]
}

docker 阿里云镜像上传
https://cr.console.aliyun.com/cn-hangzhou/instances/repositories

1. 登录阿里云Docker Registry

sudo docker login --username=sw********@163.com registry.cn-hangzhou.aliyuncs.com

将镜像推送到Registry
 docker login --username=sw*********@163.com registry.cn-hangzhou.aliyuncs.com
 docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/**/rabbitmq:[镜像版本号]
 docker push registry.cn-hangzhou.aliyuncs.com/**/rabbitmq:[镜像版本号]

sudo systemctl daemon-reload
sudo systemctl restart docker

从Registry中拉取镜像
-----------阿里云rabbitmq-------------------------------
sudo docker pull registry.cn-hangzhou.aliyuncs.com/**/rabbitmq:del
docker run -d -p 5672:5672 -p 15672:15672 --name myrabbitmq --restart=always registry.cn-hangzhou.aliyuncs.com/**/rabbitmq:del

----------------------阿里云elasticsearch-head:v5------------------
sudo docker pull registry.cn-hangzhou.aliyuncs.com/**/elasticsearch-head:v5

docker run -d --name es_admin --restart=always -p 9100:9100 registry.cn-hangzhou.aliyuncs.com/**/elasticsearch-head:v5

------------------阿里云elasticsearch:v6.3.2------------------------
sudo docker pull registry.cn-hangzhou.aliyuncs.com/**/elasticsearch:v6.3.2

docker run -d --name es --restart=always  -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" registry.cn-hangzhou.aliyuncs.com/**/elasticsearch:v6.3.2

------------------阿里云mysql:5.7------------------------

docker pull registry.cn-hangzhou.aliyuncs.com/**/mysql:5.7

mkdir -p /docker/mysql/data    /docker/mysql/logs   /docker/mysql/conf

touch my.cnf

docker run --restart=always -p 3306:3306 --privileged=true --name mysql -v /docker/mysql/conf:/etc/mysql/conf.d -v /docker/mysql/logs:/logs -v /docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=app..123  -d registry.cn-hangzhou.aliyuncs.com/**/mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci


------------------阿里云redis:3.2------------------------
docker pull registry.cn-hangzhou.aliyuncs.com/**/redis:3.2

mkdir -p /docker/redis/data

mkdir -p /docker/redis/conf

cd /docker/redis/conf

vim redis.conf

protected-mode no

appendonly yes

requirepass 88888888

docker run --name myredis -p 6379:6379 -v /docker/redis/data:/data -v /docker/redis/conf/redis.conf:/etc/redis/redis.conf -d --privileged=true --restart=always registry.cn-hangzhou.aliyuncs.com/**/redis:3.2 redis-server /etc/redis/redis.conf


------------------阿里云minio:2021.11.9------------------------


docker pull registry.cn-hangzhou.aliyuncs.com/**/minio:2021.11.9
 
docker run \
--name minio \
-p 9000:9000  \
-p 9090:9090  \
-d --restart=always \
-e "MINIO_ROOT_USER=admin" \
-e "MINIO_ROOT_PASSWORD=admin123" \
-v /docker/minio/data:/data:z \
-v /docker/minio/config:/root/.minio \
registry.cn-hangzhou.aliyuncs.com/**/minio:2021.11.9 server  /data --console-address ":9090" --address ":9000"

------------------阿里云nginx:1.21.0------------------------

docker pull registry.cn-hangzhou.aliyuncs.com/**/nginx:1.21.0

mkdir -p /docker/nginx/www /docker/nginx/logs /docker/nginx/conf

docker run --name nginx-test -p 80:80 -d registry.cn-hangzhou.aliyuncs.com/**/nginx:1.21.0

docker cp nginx-test:/etc/nginx/nginx.conf /docker/nginx/conf

docker stop nginx-test
docker rm nginx-test

http 启动
docker run -d -p 80:80 -p 9001:9001 --privileged=true --name nginx-web -v /docker/nginx/www:/usr/share/nginx/html -v /docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /docker/nginx/logs:/var/log/nginx registry.cn-hangzhou.aliyuncs.com/**/nginx:1.21.0

https 启动
docker run  \
--name nginx \
-p 443:443  \
-p 80:80  \
-v /docker/nginx/www:/usr/share/nginx/html  \
-v /docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /docker/nginx/logs:/var/log/nginx \
-v /docker/nginx/ssl:/etc/nginx/ssl  \
 --privileged=true -d \
 --restart=always  \
  registry.cn-hangzhou.aliyuncs.com/**/nginx:1.21.0 


########################配置文件https################################

user  nginx;
worker_processes  auto;
 
error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;
 
 
events {
    worker_connections  1024;
}
 
 
http {
    client_max_body_size 100m;
    include mime.types;
 
server {
        listen 80;
        server_name www.*****.xyz;
        rewrite ^(.*) https://$server_name$1 permanent;
    }
    
server {
        listen 443 ssl;  # 1.1版本后这样写
        server_name www.*****.xyz; #填写绑定证书的域名
        
        ssl_certificate /etc/nginx/ssl/8468253_www.*****.xyz.pem;  # 指定证书的位置,绝对路径(重要:这里是容器内的地址)
        ssl_certificate_key /etc/nginx/ssl/8468253_www.*****.xyz.key;  # 绝对路径,同上(重要:这里是容器内的地址)
        
        ssl_session_timeout 5m;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #按照这个协议配置
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;#按照这个套件配置
        ssl_prefer_server_ciphers on;
        ssl_session_cache shared:SSL:1m;
 
        fastcgi_param  HTTPS        on;
        fastcgi_param  HTTP_SCHEME     https;
        
        
        location / {
            proxy_set_header   X-Real-IP         $remote_addr;
            proxy_set_header   Host              $http_host;
            proxy_set_header   X-Forwarded-For   $proxy_add_x_forwarded_for;
            root   /usr/share/nginx/html;
            try_files $uri $uri/ /index.html;
        }
    }
 
    # 引入扩展配置(可以细分服务nginx)
    include /etc/nginx/conf.d/*.conf;
}


########################配置文件https################################


# docker 下载镜像
docker pull minio/minio

# 安装镜像
 docker run \
--name minio \
-p 9000:9000  \
-p 9090:9090  \
-d --restart=always \
-e "MINIO_ROOT_USER=admin" \
-e "MINIO_ROOT_PASSWORD=admin123" \
-v /docker/minio/data:/data:z \
-v /docker/minio/config:/root/.minio \
minio/minio server  /data --console-address ":9090" --address ":9000"


docker pull mongo:4.2.5


docker run -p 27017:27017 --name mongo \
-v /docker//mongo/db:/data/db \
-d mongo:4.2.5

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值