阿里云云服务器、ACR镜像服务、容器化实战:搭建企业应用

一、容器化基础知识
华为云免费试用服务器:https://activity.huaweicloud.com/free_test/index.html
阿里云docker容器教程:https://edu.aliyun.com/course/3111900/lesson/341807097
查询ip地址:www.ip138.com
二、容器化搭建企业应用实战
2024-阿里云容器训练营.docx
2024-6-12-三创=容器训练营.docx
1、完整实战步骤:
1、选择阿里云ESC云服务器,完成基本配置(内存、核数、安全组规则、用户名密码)
2、开通容器镜像服务ACR(个人版)。(创建时需要和ECS在同一地域下,否则ECS无法通过内网访问镜像仓库。)
(1)创建镜像仓库命名空间
(2)创建命名空间下的镜像仓库
(3)代码源选择本地仓库
3、ESC中安装docker服务,并启动,检查docker运行状态
4、ESC中构建wordPress镜像
(1)创建目录,并下载dockerfile和配置文件docker-entrypoint.sh
(2)制作镜像 docker build
(3)查看本地当前镜像
5、将ESC本地构建的镜像上传至ACR
(1)登陆个人镜像仓库ACR,docker login。(镜像仓库登陆以及后续打标签、推送均通过专有网络地址:registry-vpc.vn来操作速度会更快)
(2)新增ACR镜像tag,按照格式打上标签再推送到ACR方便管理
(3)docker push
6、ecs按照wordpress数据库mariadb
(1)yum按照mariadb,并启动,初始化,设置密码
(2)创建wordpress数据库 create database wordpress
(3)授权root账号远程访问
7、通过镜像运行wordpress应用
(1)在ecs上创建站点文件持久化存储目录(目录为esc服务器本地目录)
(2)运行docker镜像(运行本地创建好/或pull下来的镜像)
(3)拉去镜像前,必须要先登陆镜像仓库ACR,否则无权限
docker run --name wordpress -p 80:80 -d -v /var/www/html:/var/www/html registry-vpc.cn-hangzhou.aliyuncs.com/wordpress-***/wordpress:v1
8、访问并配置wordpress应用
(1)浏览器访问esc公网,端口80
(2)在wordpress界面配置数据库(数据库主机填入服务器的私有IP地址)

process status 显示运行中的进程、用户、CPU、内存
-aux:
-a 显示所有终端进程
-u 以用户易读格式显示
-x显示没有控制终端进程

ps -aux |grep docker
2、关键点
(1)安全组规则
在这里插入图片描述

用网络上的客户端连接容器中的mysql服务,会出现问题,在申请的华为云服务器与网络客户端之间,有一道安全组,默认只开放22端口,如果需要访问其他端口(如33061)需要设置安全组。是在ecs服务器外部,设置了一层防火墙,所有访问都需要经过它过滤。
在这里插入图片描述

[图片]
在这里插入图片描述

(2)其他问题
1、问题一:在华为云服务器启动docker,并启动mysql容器,此时外网用户如何访问?访问经历哪些步骤?

  1. 启动mysql容器,会事先定义端口映射规则,如33061:3306,即将容器3306端口映射到云服务器外网的33061端口(这个端口用于让外部用户访问)。容器相当于虚拟机,有自己虚拟的ip地址,ecs服务器在互联网中为公网ip,内部的容器使用私网ip地址。
  2. 当外部用户访问云服务器的公网端口33061时,会通过NAT将公网地址转化为私网地址,最后访问到容器的3306端口
  3. 外部用户用sqlyog(模拟客户端软件)连接mysql
  4. 在云服务器外部,华为/阿里云会设置安全组(实质上是防火墙)用于过滤访问。
  5. 安全组规则默认只开放22端口,需要开启33061端口访问权限,此时外网用户可以访问33061端口
    2、问题二:从容器化搭建企业应用反应-容器化的发展历程
    (1)随着云计算技术的迅速发展,小陈紧跟前沿技术,学习云计算相关技术也熟悉了阿里云产品,希望用云服务器来搭建公司网站。
    (2)在云服务器上搭建应用,相同应用、在不同运行环境中执行结果不同,移植性问题(小则引起应用更新失败,大则拉低工作效率,产生生产事故,严重影响业务。

(3)容器解决移植性问题,在学习容器,了解服务器虚拟化知识

(4)已学习容器和docker基础知识,需要搭建公司的网站。
(4)但这些镜像从哪来,公司的网站原本只是一些代码,还不是镜像文件,如何把代码、运行环境打包在一起称为镜像?

构建:将应用程序和运行环境打包成镜像
发布:镜像文件发布到仓库,
运行:获取已发布的镜像,运行成容器

构建:基于dockerfile构建,将构建过程每个步骤写到脚本中,通过dockerbuild放手构建,整个过程清晰、可见,而docker commit通过命令直接构建,只有构建者才知道整个过程,难以重现。

dockerfile用于构建镜像的文本文件,包含了所需的指令和说明。dockerfile是一种被docker程序解释的脚本(编写时要符合dockerfile规则,dockerfile由一条条命令构成,每条命令对应linux下的命令)
(5)镜像放在哪好
放在镜像仓库中,称为镜像发布
(6)为什么要发布镜像
宣告这个镜像时可部署的正式版本,可作为后期生产环境的部署、更新应用的基准
(7)为什么要发布到镜像仓库,而不是本地服务器
一个协同项目中,又开发、测试、运维多个角色,每个角色不止一个人,希望能够中应用构建到发布的不同阶段形成良好的协作,就需要大家能访问的镜像仓库作为协作平台。
(8)公有镜像仓库最知名的github,需要私有还是公有镜像仓库?
私有,公司网站的一些素材,关联到企业的品牌形象和数据信息,二次开发的代码也涉及到了用户、支付等敏感数据。
(9)有必要自建私有镜像仓库嘛?
没必要,工作中心聚焦在核心业务上,使用阿里云提供的镜像服务ACR更加方便、可靠、高安全性。

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

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

相关文章

2.中国菜刀使用详解(OWASP实战训练)

2.中国菜刀使用详解(OWASP实战训练)(OWASP实战训练) Webshell(1)shell2.php #eval 使用PHP函数,例如PHPinfo(2)Shell3.php #system 使用Linux系统命令,列如ls…

【已解决】Python报错:NameError: name ‘Image‘ is not defined

😎 作者介绍:我是程序员行者孙,一个热爱分享技术的制能工人。计算机本硕,人工制能研究生。公众号:AI Sun,视频号:AI-行者Sun 🎈 本文专栏:本文收录于《AI实战中的各种bug…

性能评测系列(PT-010):Spring Boot + MySQL,高并发insert

一、测试概述 测试场景 场景编号: PT-010场景描述: Java应用,MySQL单表写测试目的:指定规格、配置、环境下,Java应用数据库简单写场景负载能力评估。(不含调优,所测结果未必是最优结果&#x…

软RAID

硬盘 连续空间 无法 扩容 lvm 非连续空间 可以动态扩容 raid 备份, 提高读写性能,不能扩容 raid 是磁盘的集合,按照排列组合的方法不 一,给 raid 去了不同的名字 raid0 raid1 raid5 raid10 什么是 RAID "RAID"…

计算机网络之UDP协议

一.什么是UDP协议: 1.1UDP的基本概念 UDP协议又叫做用户数据报协议,是一个目标在传输层提供直接发送报文的能力,UDP与TCP相比,它不会拆分数据,它只是能够发送报文。 1.2为什么要使用UDP协议 我们可能会想,如…

three.js - MeshPhongMaterial材质

phong网格材质:Mesh - Phong - Material 一种用于具有镜面高光的光泽表面的材质。 它可以模拟,具有镜面高光的光泽表面,提供镜面反射效果。 MeshPhongMaterial: MeshPhongMaterial是一种基于Phong光照模型的材质,主要…

工作记录2

1. 要实现y轴超出部分滚动的效果&#xff0c;可以这样写 <div style"max-height: 384px; overflow-y: auto;"> </div> 2. 当后端接口还没好的时候&#xff0c;可以自己模拟一下接口返回的数据 export const getCommodityDetail (id) > Promise.re…

MySQL入门学习-连接查询.复杂连接

复杂连接是指涉及多个表之间的连接操作&#xff0c;通过使用条件和连接类型来组合和关联这些表的数据。 一、常见的复杂连接类型及其特点、使用方法和示例代码&#xff1a; 1. INNER JOIN&#xff08;内连接&#xff09;&#xff1a; - 特点&#xff1a;返回两个表中满足连接…

构建实用的Flutter文件列表:从简到繁的完美演进

前言&#xff1a;为什么我们需要文件列表&#xff1f; 在现代科技发展迅速的时代&#xff0c;我们的电脑、手机、平板等设备里积累了大量的文件&#xff0c;这些文件可能是我们的照片、文档、音频、视频等等。然而&#xff0c;当文件数量增多时&#xff0c;我们如何快速地找到…

HTML(20)——定位

定位 作用&#xff1a;灵活的改变盒子在网页中的位置 实现&#xff1a; 定位模式&#xff1a;position边偏移&#xff1a;设置盒子的位置 leftrighttopbottom 相对定位 position&#xff1a;relative 改变位置的参照物是自己原来的位置&#xff0c;并且不脱标占位&#x…

程序员是干嘛的?程序员在职场中的重要性

程序员是干嘛的&#xff1f;程序员在职场中的重要性 随着科技的飞速发展&#xff0c;计算机技术得到了广泛应用&#xff0c;程序员也成为了当今职场中不可或缺的一部分。那么&#xff0c;程序员究竟是干什么的呢&#xff1f;他们为什么如此重要&#xff1f;下面我们来详细探讨一…

驾校预约管理系统

摘 要 随着驾驶技术的普及和交通安全意识的增强&#xff0c;越来越多的人选择参加驾校培训&#xff0c;以获取驾驶执照。然而&#xff0c;驾校管理面临着日益增长的学员数量和繁琐的预约管理工作。为了提高驾校的管理效率和服务质量&#xff0c;驾校预约管理系统成为了必不可少…

微信app支付没上架开通方法

对于许多商家来说&#xff0c;特别是那些经营游戏、商城等拥有自己APP的商家&#xff0c;接入微信支付无疑是一个重要的步骤&#xff0c;它能让用户更方便地进行支付操作&#xff0c;提升购物体验。然而&#xff0c;随着微信支付政策的调整&#xff0c;现在开通APP支付并不像以…

Java抽象类:深入理解与应用

一、引言 在Java的面向对象编程中&#xff0c;抽象类&#xff08;Abstract Class&#xff09;是一个非常重要的概念。它允许我们定义一个类&#xff0c;该类中包含一些抽象方法和非抽象方法&#xff0c;但自己不能被实例化。抽象类主要用于创建类的层次结构&#xff0c;并为子…

单片机练习题6

一、填空 1&#xff0e;如果采用晶振的频率为3MHz&#xff0c;定时器/计数器Tx&#xff08;x0,1&#xff09;工作在方式0、1、2下&#xff0c;其方式0的最大定时时间为 &#xff0c;方式1的最大定时时间为 &#xff0c;方式2的最大定时时间为 。 答…

手机照片压缩到20k以内免费,这几款心动软件快收好!

在数字化时代&#xff0c;手机拍照已成为我们记录生活的重要方式之一。然而&#xff0c;高清的照片也意味着占用着越来越多的手机存储空间。如果你正在为手机内存告急而烦恼&#xff0c;那么这几款手机照片压缩神器或许能成为你的救星&#xff01;它们不仅可以将照片轻松压缩至…

【Linux】多线程的相关知识点

一、线程安全 1.1 可重入 VS 线程安全 1.1.1 概念 线程安全&#xff1a;多个线程并发执行同一段代码时&#xff0c;不会出现不同的结果。常见对全局变量或者静态变量进行操作&#xff0c;并且没有锁的保护的情况下&#xff0c;会出现问题。重入&#xff1a;同一个函数被不同…

vue3通过vue-video-player实现视频倍速、默认全屏、拖拽进度条等功能

效果图&#xff1a; 1、场景&#xff1a; js原生的video标签在不同浏览器及不同型号手机上都展示的不一样&#xff0c;一部分没有倍速&#xff0c;一部分没有全屏等功能&#xff0c;为了统一视频播放的交互功能&#xff0c;使用vue-video-player插件来完成&#xff0c;vue-vid…

Java面试题:讨论事务的ACID属性,并解释在Java中如何管理事务

事务是数据库管理系统中的一组操作&#xff0c;这些操作要么全部成功&#xff0c;要么全部失败&#xff0c;事务的ACID属性确保了数据库系统的可靠性和一致性。ACID是指&#xff1a; Atomicity&#xff08;原子性&#xff09;&#xff1a;事务中的所有操作要么全部完成&#xf…

轻松打造分班查询系统,这个工具助您一臂之力!

新学期伊始&#xff0c;老师们知道该如何快捷制作并发布分班查询系统吗&#xff1f;面对繁杂的学生名单和班级分配&#xff0c;无疑是一项巨大的麻烦。传统的纸质通知效率低下&#xff0c;容易出错&#xff0c;更别提在信息传递过程中可能出现的混乱和误解了。 现在有一个工具可…