如何在云服务上通过docker部署服务?

如何在云服务上通过docker部署服务?

  • 一、在云服务器上安装Docker
    • 1、查看云服务器的OS信息
    • 2、[安装Docker并使用(Linux)](https://help.aliyun.com/zh/ecs/use-cases/deploy-and-use-docker-on-alibaba-cloud-linux-2-instances)
  • 二、通过docker部署服务
    • 1、将本地的Docker镜像推送到Docker的仓库
      • 1.1 [创建Docker仓库](https://hub.docker.com/repository/create)
      • 1.2 登录本地的docker desktop,并推送镜像到远程
    • 2、在云服务器的终端执行docker run
      • 2.1 如何在macOS上生成linux/x86_64的镜像?
      • 2.2 在云服务的终端重新执行docker run
      • 2.3 在云服务上开放8080端口
      • 2.4 在本机的浏览器中验证

前提:如何购买并使用阿里云的云服务器?

一、在云服务器上安装Docker

1、查看云服务器的OS信息

买云服务器的时候,咱选择过OS,但咱还是通过命令行的方式再查看下。

  • cat /etc/os-release
    在这里插入图片描述

2、安装Docker并使用(Linux)

  • (1)运行以下命令,添加docker-ce的dnf源:
sudo dnf config-manager --add-repo=https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  • (2)运行以下命令,安装Alibaba Cloud Linux 3专用的dnf源兼容插件。
sudo dnf -y install dnf-plugin-releasever-adapter --repo alinux3-plus
  • (3)运行以下命令,安装Docker。
sudo dnf -y install docker-ce --nobest
  • (4)sudo docker -v
    在这里插入图片描述
  • (5)执行以下命令,启动Docker服务,并设置开机自启动。
sudo systemctl start docker
sudo systemctl enable docker
  • (6)执行以下命令,查看Docker是否启动。
sudo systemctl status docker

在这里插入图片描述

二、通过docker部署服务

1、将本地的Docker镜像推送到Docker的仓库

1.1 创建Docker仓库

在这里插入图片描述

(1)即使有魔法,也可能因为网络原因导致无法创建…过一段时间,又自然好了~
(2)注意:由于Namespace为forrest0721,因此,docker build时,也要写成forrest0721/chatgpt-api
(3)用Public,而不是Private

1.2 登录本地的docker desktop,并推送镜像到远程

  • 如果登录不上,看:解决docker desktop 登录不上账号的问题
  • 登录后,推送镜像:
    在这里插入图片描述
  • 推送成功:
    在这里插入图片描述

2、在云服务器的终端执行docker run

  • 命令:
docker run -p 8080:8080 \
--name chatgpt-api \
-d forrest0721/chatgpt-api

报错:docker: no matching manifest for linux/amd64 in the manifest list entries.

  • 原因:
    • macOS(m2 pro芯片)生成的镜像的OS/ARCH为:linux/arm64
    • 而我云服务器的OS/ARCH为:linux/x86_64

在这里插入图片描述

2.1 如何在macOS上生成linux/x86_64的镜像?

Docker引入了一个名为buildx的实验性功能,它支持跨平台构建,这意味着可以在一个平台(例如macOS)上为另一个平台(例如linux/x86_64)构建Docker镜像。

  • 我macOS上的docker版本:Docker version 24.0.7

比较老的docker版本估计用不了buildx

  • 步骤:

(1)创建一个新的构建器实例

docker buildx create --use

在这里插入图片描述
(2)使构建器实例进入准备就绪状态

docker buildx inspect --bootstrap

在这里插入图片描述
(3)构建适用于linux/x86_64平台的Docker镜像

docker buildx build --platform linux/x86_64 -t forrest0721/chatgpt-api . --push

虽然显示的还是linux/arm64,但能在云服务上run起来了。
在这里插入图片描述

2.2 在云服务的终端重新执行docker run

docker run -p 8080:8080 \
--name chatgpt-api \
-d forrest0721/chatgpt-api

2.3 在云服务上开放8080端口

  • 实例-加入安全组:
    在这里插入图片描述
  • 安全组-管理规则:
    在这里插入图片描述
    在这里插入图片描述

2.4 在本机的浏览器中验证

  • 输入:公网ip:8080/verify?token=xxx
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/649404.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue进阶:Vue中的ajax请求

一、Vue中的ajax请求 1.1 解决开发环境 Ajax 跨域问题 总结: 1.1.1 模拟跨域问题 准备好测试的服务器 server1.js const express require(express) const app express()app.use((request,response,next)>{console.log(有人请求服务器1了);// console.log(…

P4769 [NOI2018] 冒泡排序 洛谷黑题题解附源码

[NOI2018] 冒泡排序 题目背景 请注意,题目中存在 n 0 n0 n0 的数据。 题目描述 最近,小 S 对冒泡排序产生了浓厚的兴趣。为了问题简单,小 S 只研究对 1 1 1 到 n n n 的排列的冒泡排序。 下面是对冒泡排序的算法描述。 输入&#x…

韦东山嵌入式Liunx入门笔记一

文章目录 一、嵌入式Linux二、Ubuntu系统2-1 安装软件2-2 Linux文件(1) 文件架构(2)文件属性(3)文件命令(4) 解压、压缩文件(5) 网络命令 2-3 vi编辑器2-4 Ubuntu下包管理 三、配置网卡四、安装后续学习使用的软件4-1 MobaXterm4-2 FileZilla4-3 Source Insight4.04-4 下载BSP4…

Open CASCADE学习|圆柱螺旋线绘制原理探究

1、圆柱螺旋线绘制原理 在OCC中,圆柱面的参数方程为: 设P为(x0,y0,z0),则 xx0r*cos(u) yy0r*sin(u) zz0v 但u、v之间有关系时,此方程表达为圆柱螺旋线,u、v之间为线性关系时是等螺距螺旋线&#xff0…

文件上传之秒传功能

秒传是一种文件的传输机制,用于在文件已经存在于目标服务器上时,通过校验文件的唯一标识,实现快速而无需从新上传整个文件,它解决了重复上传相同文件的问题,提高了文件传输的效率和节省了带宽资源。 技术阐述&#xff…

免 费 小程序商城搭建之鸿鹄云商 SAAS云产品概述

【SAAS云平台】打造全行业全渠道全场景的SaaS产品,为店铺经营场景提供一体化解决方案;门店经营区域化、网店经营一体化,本地化、全方位、一站式服务,为多门店提供统一运营解决方案;提供丰富多样的营销玩法覆盖所有经营…

软件测试面试八股文(2024新版)

🍅 视频学习:文末有免费的配套视频可观看 🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 1、你的测试职业发展是什么? 测试经验越多,测试能力越高。所以我的职业发…

【unity实战】实现蓄力丢手榴弹、烟雾弹、燃烧弹的效果

文章目录 爆炸燃烧烟雾效果资产手榴弹丢手雷烟雾弹、燃烧弹实现手雷每次撞墙弹发出音效(补充)完结 爆炸燃烧烟雾效果资产 https://assetstore.unity.com/packages/vfx/particles/war-fx-5669 手榴弹 手榴弹配置好刚体,碰撞体 新增脚本Th…

Qlik Sense : Store With Retry (保存重试机制)

Background sometime you cannot store the file directly ,maybe there are another process are reading/storeing the file , so you would need to wait another proecess done and retry . then we come up this solution . 有时您不能直接存储文件,可能还有…

实验:eNSP AR通过telnet远程登录另外一台AR

实验2:eNSP AR通过telnet远程登录另外一台AR 基于实验1的基础上来进行,我们通过AR2220登录AR3260 首先设置远程登录密码 1、user-interface vty 0 4 进入用户的虚拟终端 2、设置密码 set authentication password cipher Huawei 这里的意思就是设置密…

数据结构(C语言版)代码实现(四)——静态单链表的部分代码实现

目录 参考材料、格式 头文件SLinkList.h 库、宏定义、函数类型声明 线性表的静态单链表存储结构 按值查找 初始化静态链表 分配空间 回收空间 打印已用链表中的元素 求集合(A-B)U(B-A)中的元素(重点介绍) 调试过程 修改报错与警告 调试 完整…

找不到msvcp110.dll怎么办,msvcp110.dll丢失修复方法分享

当计算机系统中无法找到msvcp110.dll这个特定的动态链接库文件时,可能会引发一系列运行问题和功能受限的情况。msvcp110.dll是Microsoft Visual C Redistributable Package的一部分,对于许多基于Windows的应用程序来说,它是至关重要的运行组件…

vue模拟聊天页面列表:滚动到底部,滚动到顶部触发加载更多

先看下效果&#xff1a; 代码&#xff1a; <template><div><div style"text-align: center"><button click"scrollTop">滚动到顶部</button><button click"scrollBottom">滚动到底部</button></d…

Vue深入学习2—虚拟DOM和Diff算法

1、snabbdom 是什么&#xff1f; snabbdom是“速度"的意思&#xff0c;源码只有200行&#xff0c;使用TS写的&#xff0c;让东西变得模块化 2、snabbdom 的 h 函数如何工作&#xff1f; h函数用于产生虚拟节点&#xff0c;同时也可以嵌套使用&#xff0c;得到虚拟DOM树&am…

kuberneters可视化界面-kuboard

一、kuboard安装 可以选用&#xff0c;docker和docker-commpose kuberneters 安装 kuboard官网 1、 docker安装 sudo docker run -d \--restartunless-stopped \--namekuboard \-p 80:80/tcp \-p 10081:10081/tcp \-e KUBOARD_ENDPOINT"http://192.168.1.10:80" …

linux的kali安装,换源,更新包

下载kali kali.org进入官网后点第二个 然后点第一个 解压kali 下载后获得.7z压缩包&#xff0c;建议移动到合适自己电脑的位置进行解压&#xff0c;我喜欢放在D盘 启动kali 双击进入解压出的文件夹&#xff0c;将唯一一个.vmx文件用vmware打开&#xff08;没装的自行提前装…

数据结构奇妙旅程之二叉树题型解法总结

꒰˃͈꒵˂͈꒱ write in front ꒰˃͈꒵˂͈꒱ ʕ̯•͡˔•̯᷅ʔ大家好&#xff0c;我是xiaoxie.希望你看完之后,有不足之处请多多谅解&#xff0c;让我们一起共同进步૮₍❀ᴗ͈ . ᴗ͈ აxiaoxieʕ̯•͡˔•̯᷅ʔ—CSDN博客 本文由xiaoxieʕ̯•͡˔•̯᷅ʔ 原创 CSDN …

【深度学习】CodeFormer训练过程,如何训练人脸修复模型CodeFormer

文章目录 BasicSR介绍环境数据阶段 I - VQGAN阶段 II - CodeFormer (w0)阶段 III - CodeFormer (w1) 代码地址&#xff1a;https://github.com/sczhou/CodeFormer/releases/tag/v0.1.0 论文的一些简略介绍&#xff1a; https://qq742971636.blog.csdn.net/article/details/134…

链路追踪-调用链跟踪-Jaeger

文章目录 一、什么是链路跟踪二、OpenCensusOpenCensus 主要特点OpenTracing标准基本概念Span 三、典型服务端产品什么是OpenTracing?opentracing 使用介绍 四、JaegerJaeger 包含的模块Jaeger-client&#xff08;客户端库&#xff09; 五、Jaeger服务容器化部署过程问题整理 …

csdn黑色背景用法

在edge浏览器下&#xff0c;下载油猴脚本管理器 脚本下载 edge扩展 效果图如下&#xff1a;&#xff1a;&#xff1a;