三步在ECS上构建云上相册

简介: 阿里云ECS,体验好极了~


阿里云ECS简介

我相信看到这篇文章的你对服务器已经有一定的了解,在这个数字化时代,云计算之于企业与个人就像汽油之于汽车一样重要,它帮助我们成就价值、保证高可用的服务。正逢上云采购季,作为老用户的我以3.5折入手了阿里云ECS,本文带大家在阿里云ECS上搭建Docker生产环境并配置一个个人相册项目。

 

DockerDocker-compose

      作为云原生的四大要素之一,docker是个好东西,可以极大提升实施效率并保障安全。

      Docker与Docker-compose的区别:

Docker

Docker-compose

开源的应用容器引擎

自动化编排容器工具

基于Dockerfile得到images

基于docker-compose.yml,配置由该文件定义,启动时通常是一个服务

单独的container

通常由多个container共同组成

两者都需要安装,但是要使用docker-compose,必须已经安装docker。由于众所周知的原因,docker官方镜像源访问速度非常不稳定,阿里云考虑到了这一点,在官方提供的镜像里已经将镜像源转换为阿里源,我们无需单独配置,开箱即用。

五分钟快速搭建个人云相册

1)   登录服务器

1.    购买云服务器,上云采购季可以优惠购买。

2.    在购买ECS服务器后,系统会创建一个ECS实例。每一个ECS实例对应一台已购买的云服务器。您可以通过电脑上自带的终端工具访问云服务器,进行应用部署和环境搭建。

3.    ECS控制台页面,选择实例的所属地域,找到示例的详情。

4.    找到目标实例,然后在操作列选择【更多】> 【密码/密钥】 > 【重置实例密码】,然后在弹出的对话框设置ECS实例的登录密码。单击【立即重启】使新密码生效。

5.    ECS实例页面,点击远程连接,您也可以在PC上使用命令行终端工具来进行SSH连接。

6.    SSH终端中输入连接命令ssh root@[ipaddress]ipaddress 替换为您的ECS服务器的公网IP地址。输入 yes,然后输入云服务器的登录密码即可,使用Xshell等工具可以保存用户信息便捷登录。

2)   安装docker.io&docker-compose

a)     Docker的版本。

Docker有三个版本:docker.iodocker-cedocker-ee。分别为debian/ubuntu官方基于docker社区源码封装的版本、社区版、商业版,.io版的依赖与系统的衔接很好,很少出现依赖问题。不推荐使用docker-ce版本,这个版本容易出现容器异常且非常恼人。

b)     Ubuntu系统上安装非常简单: apt-get install docker.io,如果出现错误请执行apt更新。

c)     启动docker服务:service docker start

d)     安装docker-composeapt install docker-compose

e)     image.png

f)      我并没有配置过docker镜像加速服务,但可见拉取包的时候是自动从阿里云镜像仓库提取的,阿里云应该是将配置集成到云市场镜像内了,开箱即用非常好使。

g)     文本框: tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://******.mirror.aliyuncs.com"]
}
EOF
如果您发现没有配置阿里云的镜像加速,那么可以这样配置:登录容器镜像服务控制台-单击 [镜像中心] > [镜像加速器]-找到您的镜像地址-在服务器上配置如下命令- 刷新配置systemctl daemon-reload- 重启服务systemctl restart docker

h)     就这样了。

 

3)    基于photoview的个人云相册

a)    文本框: services:
  db:
    image: mariadb:10.5
    restart: always
    environment:
      - MYSQL_DATABASE=photoview
      - MYSQL_USER=photoview
      - MYSQL_PASSWORD=photosecret
      - MYSQL_RANDOM_ROOT_PASSWORD=1
    volumes:
      - db_data:/var/lib/mysql

  photoview:
    image: viktorstrate/photoview:2
    restart: always
    ports:
      - "8000:80"
    depends_on:
      - db

    environment:
      - PHOTOVIEW_DATABASE_DRIVER=mysql
      - PHOTOVIEW_MYSQL_URL=photoview:photosecret@tcp(db)/photoview
      - PHOTOVIEW_LISTEN_IP=photoview
      - PHOTOVIEW_LISTEN_PORT=80
      - PHOTOVIEW_MEDIA_CACHE=/app/cache
      
    volumes:
      - api_cache:/app/cache
      - ./photos_path:/photos:ro

volumes:
  db_data:
  api_cache:
创建yml文件:vim docker-compose.yml

b)    执行docker-compose up -d自动化编排。

c)     项目部署成功,浏览器输入<EIP>:8000即可访问~

4)   创建环境副本(快照)

a)    登录ECS控制台-左侧导航栏-存储与快照-开通快照。

b)    ECS实例列表页,单击目标实例右侧的【管理】按钮,进入实例详情页。

c)     在本实例云盘页面点击【创建快照】,根据提示完成流程。

d)    快照创建完成后单击【创建自定义镜像】,根据提示完成流程。

e)    就这样就创建完成啦。

 

浏览器输入<EIP>:8000即可访问我们刚才构建的云上相册,基于这个项目还可以开发照片AI识别等更多内容

 

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
相关文章
|
3月前
|
Java 应用服务中间件 开发者
【实战指南】Java Socket编程:构建高效的客户端-服务器通信
【6月更文挑战第21天】Java Socket编程用于构建客户端-服务器通信。`Socket`和`ServerSocket`类分别处理两端的连接。实战案例展示了一个简单的聊天应用,服务器监听端口,接收客户端连接,并使用多线程处理每个客户端消息。客户端连接服务器,发送并接收消息。了解这些基础,加上错误处理和优化,能帮你开始构建高效网络应用。
270 10
|
3月前
|
安全 Java 网络安全
Java Socket编程教程:构建安全可靠的客户端-服务器通信
【6月更文挑战第21天】构建安全的Java Socket通信涉及SSL/TLS加密、异常处理和重连策略。示例中,`SecureServer`使用SSLServerSocketFactory创建加密连接,而`ReliableClient`展示异常捕获与自动重连。理解安全意识,如防数据截获和中间人攻击,是首要步骤。通过良好的编程实践,确保网络应用在复杂环境中稳定且安全。
74 0
|
7天前
|
存储 弹性计算 SDN
企业级 ECS 集群的构建需要综合考虑多个因素,通过不断的比较和对比不同的方案,选择最适合企业自身需求和发展的架构。
【9月更文挑战第5天】在数字化商业环境中,构建企业级ECS(弹性计算服务)集群对提升业务稳定性、扩展性和性能至关重要。本文将比较传统物理服务器与ECS架构,分析云服务商选择(如AWS和阿里云)、实例配置(CPU/内存)、网络架构(SDN vs 传统)及存储方案(本地存储 vs 云存储),帮助企业根据自身需求选出最优方案,实现高效稳定的ECS集群部署。
37 18
|
2月前
|
存储 监控 安全
服务器安全:构建数字时代的坚固堡垒
在数字化时代,服务器安全至关重要,它直接影响企业业务连续性和客户数据保护。服务器遭受攻击或数据泄露将给企业带来巨大损失。服务器面临网络攻击、恶意软件、内部与物理威胁。关键防护措施包括严格访问控制、数据加密与备份、安全审计与监控、部署防火墙和入侵检测系统、及时安全更新及物理安全防护。最佳实践涵盖制定全面安全策略、采用先进技术、员工培训、定期安全评估与测试及建立应急响应团队。通过这些措施,企业能构建坚实的服务器安全防护体系。
127 55
|
7天前
|
存储 弹性计算 缓存
企业级 ECS 集群构建的巅峰对决:谁能主宰未来的命运?
【9月更文挑战第5天】在数字化商业环境中,构建企业级ECS集群对提高业务稳定性、扩展性和性能至关重要。与传统物理服务器相比,ECS可根据需求快速伸缩资源,提升效率和响应速度。选择云服务商时需考量服务广度、成本及网络覆盖。配置ECS实例要考虑业务特性,如计算或内存需求。网络架构方面,软件定义网络(SDN)比传统三层架构更灵活高效。存储方案的选择也影响性能和扩展性。综上所述,构建高效稳定的ECS集群需综合考量多种因素,以支持业务发展。
28 8
|
30天前
|
存储 弹性计算 缓存
惊爆!企业级 ECS 集群构建的巅峰对决:谁能主宰未来的命运?
【8月更文挑战第13天】在数字化商业环境中,构建企业级ECS集群对提高业务稳定性、扩展性和性能至关重要。与传统物理服务器相比,ECS可根据需求快速伸缩资源,提升效率和响应速度。选择云服务商时需考量服务广度、成本及网络覆盖。配置ECS实例要考虑业务特性,如计算或内存需求。网络架构方面,软件定义网络(SDN)比传统三层架构更灵活高效。存储方案的选择也影响性能和扩展性。综上所述,构建高效稳定的ECS集群需综合考量多种因素,以支持业务发展。
30 3
|
2月前
|
弹性计算 网络协议 Linux
阿里云主机构建FRP内网穿透家用服务器避坑指南
详述了利用FRP工具搭建内网穿透的流程,包括阿里云ECS的配置、家用服务器的准备、FRP工具的下载与配置,以及通过SSH远程访问本地服务器的解决策略,确保了内外网间的稳定连接。
226 1
阿里云主机构建FRP内网穿透家用服务器避坑指南
|
1月前
|
缓存 测试技术 API
从零到一:构建高效的 RESTful API 服务器
在当今的软件开发环境中,RESTful API 是实现系统间数据交互的关键组件。本文探讨了如何从头开始构建一个高效的 RESTful API 服务器,包括技术选型、架构设计、性能优化等方面的内容。我们将以 Python 的 Flask 框架为例,展示如何设计一个可扩展且高性能的 API 服务器,并提供实际代码示例来说明最佳实践。
|
11天前
|
Rust 安全 开发者
惊爆!Xamarin 携手机器学习,开启智能应用新纪元,个性化体验与跨平台优势完美融合大揭秘!
【8月更文挑战第31天】随着互联网的发展,Web应用对性能和安全性要求不断提高。Rust凭借卓越的性能、内存安全及丰富生态,成为构建高性能Web服务器的理想选择。本文通过一个简单示例,展示如何使用Rust和Actix-web框架搭建基本Web服务器,从创建项目到运行服务器全程指导,帮助读者领略Rust在Web后端开发中的强大能力。通过实践,读者可以体验到Rust在性能和安全性方面的优势,以及其在Web开发领域的巨大潜力。
22 0
|
13天前
|
JavaScript 前端开发 UED
服务器端渲染新浪潮:用Vue.js和Nuxt.js构建高性能Web应用
【8月更文挑战第30天】在现代Web开发中,提升应用性能和SEO友好性是前端开发者面临的挑战。服务器端渲染(SSR)能加快页面加载速度并改善搜索引擎优化。Vue.js结合Nuxt.js提供了一个高效框架来创建SSR应用。通过安装`create-nuxt-app`,可以轻松创建新的Nuxt.js项目,并利用其自动路由功能简化页面管理。Nuxt.js默认采用SSR模式,并支持通过`asyncData`方法预取数据,同时提供了静态站点生成和服务器端渲染的部署选项,显著提升用户体验。
33 0

热门文章

最新文章