ecs初体验: docker配置 nginx服务器

简介: 了解ecs的基本使用, 学习docker的使用, 并制定计划以学习linux网络编程/web前后端的开发

计算机在读,想学习前后端开发\云计算服务的使用. 在阿里云的5小时实验课体验过ecs的强大之后,希望拥有一个长期的ecs服务器供持续学习使用. 在通过阿里云学生认证后网页显示飞天加速计划的学生优惠, 正好符合学习需求. 目前先从docker开始入手, 利用已有的镜像可以快速搭建好开发环境,从web开发入手学习前后端内容.

docker CE版本安装

  1. 安装依赖库bash yum install -y yum-utils device-mapper-persistent-data lvm2
  2. 添加软件源信息 bash yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  3. 安装dockerCE

    yum makecache fast
    yum -y install docker-ce
  4. 启动docker

    systemctl start docker
    systemctl restart docker

docker 概念

docker容器是更轻量级的虚拟机实现. 虚拟机内部实现了完整的虚拟硬件并运行一个独立的操作系统, 十分重量级.
docker容器则利用操作系统内核提供的能力cgroup, 可以对进程隔离文件系统/各类资源的名字空间, 使得进程可以认为自己接触到的硬件资源都是独一无二. 而不只是虚拟内存地址空间是隔离的. 因此一个进程就是一个 虚拟机的效果, 所有这些进程都共用一个宿主机内核,明显轻量级很多.

由于全面的隔离, 进程可以有不同的运行时环境. docker镜像包含了各种类库等运行时环境,同一个镜像启动的容器(一个linux进程)就有完全相同的运行时环境. 避免反复配置环境的痛苦.
容器和镜像的关系 类似于对象和类的关系.
docker镜像源通常在hub.docker.com, 但是国内还是用国内的源比较好
https://cr.console.aliyun.com/ 能查到docker镜像的国内源

修改配置文件

tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://kqh8 **.mirror.aliyuncs.com"]
}
EOF

查找含有nginx 的dockers镜像
docker search nginx
docker pull nginx:latest

查看本地镜像
docker images

启动容器
docker run --name nginx-test -p 8080:80 -d nginx
--name nginx-test:容器名称。
-p 8080:80: 端口进行映射,将本地8080端口映射到容器内部的80端口。
-d nginx: 设置容器在后台一直运行。

此时宿主机是阿里云ecs, 有一个弹性公网ip. 默认的网络模式中(bridge) docker容器也有自己的虚拟网卡和局域网ip, 宿主机相当于网关.
通过 http://弹性IP:8080 来访问宿主机的8080端口等价于访问容器的80端口,获得http服务.

我对 ECS 弹性IP的理解

ecs作为一台服务器, 有自己的IP, 但不是固定公网IP.
弹性IP是中间经过一层NAT端口映射转换, 这个映射是由账号绑定的.
内网IP:内网port + 外网IP:外网port
弹性IP的情况下, 内网IP直接用的外网IP.

这样的好处是 ecs机器等云资源有变更的时候, 并不会改变对外的IP设置.
域名解析等服务不需要重新配置.
坏处是内网机器数目有限, 最多65535台内网机器同时访问同一个 (外网:端口)

在阿里云ECS实例的控制台, 可以查看ECS的名字 id, ip, 安全组策略等多种信息.
安全组可以设定很多防火墙规则, 过滤某些协议, 某些包, 开放 关闭端口等.
在阿里云控制台根据ecs的ip可以远程连接到ecs, 在命令行界面操作这台ecs
远程连接的时候需要有ecs上的linux账号密码, 之后可以配置rsa公钥登录.

也可以不通过阿里云的控制台, 直接用普通的ssh客户端直接远程登录ecs
ssh root@弹性IP

ssh 的妙用

  1. 端口转发实现内网穿透,让两个不同局域网的host1 和 host2能通过ecs连起来.
  2. ssh 配合 tar命令和 重定向功能实现本地文件复制到远程ecs 或者反过来.

疑问

是 ak 和 aksecret 是什么用处?
同一个host上的docker 网络模式: host/container/bridge
不同host上的不同docker如何通信互联?

学习计划

除了nginx外, 也可以使用tornado python web框架. 基于web框架自己写一个简单的博客系统(登录注册增删改博文的前端页面以及对应的后端crud操作) 这样可以学习postgresql的使用.还有前端开发整个流程.
后续的改进可以有登录状态的保持, 评论的功能.

实现一个2048的游戏挂在web 服务器下.

编译出调试版本nginx, 通过单步调试功能学习nginx的异步+io多路复用模型

搭建docker集群, 搭建负载均衡之类的架构.

相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
相关文章
|
7月前
|
弹性计算 定位技术 数据中心
阿里云服务器配置选择方法:付费类型、地域及CPU内存配置全解析
阿里云服务器怎么选?2025最新指南:就近选择地域,降低延迟;长期使用选包年包月,短期灵活选按量付费;企业选2核4G5M仅199元/年,个人选2核2G3M低至99元/年,高性价比爆款推荐,轻松上云。
766 11
|
7月前
|
存储 弹性计算 监控
阿里云渠道商:如何挑选阿里云服务器配置?
本文详解通用型、计算型、内存型等实例适用场景,结合性能评估与成本优化策略,助力用户按需选择。以日均1万访问企业网站为例,2核4G+3M带宽月费约200元,性价比高。合理配置更省钱。
|
弹性计算 运维 Kubernetes
使用ECS服务器学习Docker
使用ECS服务器学习Docker
使用ECS服务器学习Docker
|
7月前
|
弹性计算 运维 安全
阿里云轻量应用服务器与云服务器ECS啥区别?新手帮助教程
阿里云轻量应用服务器适合个人开发者搭建博客、测试环境等低流量场景,操作简单、成本低;ECS适用于企业级高负载业务,功能强大、灵活可扩展。二者在性能、网络、镜像及运维管理上差异显著,用户应根据实际需求选择。
564 10
|
7月前
|
运维 安全 Ubuntu
阿里云渠道商:服务器操作系统怎么选?
阿里云提供丰富操作系统镜像,涵盖Windows与主流Linux发行版。选型需综合技术兼容性、运维成本、安全稳定等因素。推荐Alibaba Cloud Linux、Ubuntu等用于Web与容器场景,Windows Server支撑.NET应用。建议优先选用LTS版本并进行测试验证,通过标准化镜像管理提升部署效率与一致性。
|
7月前
|
弹性计算 ice
阿里云4核8g服务器多少钱一年?1个月和1小时价格,省钱购买方法分享
阿里云4核8G服务器价格因实例类型而异,经济型e实例约159元/月,计算型c9i约371元/月,按小时计费最低0.45元。实际购买享折扣,1年最高可省至1578元,附主流ECS实例及CPU型号参考。
705 8
|
7月前
|
存储 监控 安全
阿里云渠道商:云服务器价格有什么变动?
阿里云带宽与存储费用呈基础资源降价、增值服务差异化趋势。企业应结合业务特点,通过阶梯计价、智能分层、弹性带宽等策略优化成本,借助云监控与预算预警机制,实现高效、可控的云资源管理。
|
7月前
|
弹性计算 运维 安全
区别及选择指南:阿里云轻量应用服务器与ECS云服务器有什么区别?
阿里云轻量应用服务器适合个人开发者、学生搭建博客、测试环境,易用且性价比高;ECS功能更强大,适合企业级应用如大数据、高流量网站。根据需求选择:轻量入门首选,ECS专业之选。
464 2
|
7月前
|
弹性计算 ice
阿里云4核8G云服务器配置价格:热门ECS实例及CPU处理器型号说明
阿里云2025年4核8G服务器配置价格汇总,涵盖经济型e实例、计算型c9i等热门ECS实例,CPU含Intel Xeon及AMD EPYC系列,月费159元起,年付低至1578元,按小时计费0.45元起,实际购买享折扣优惠。
2537 1