华为云云耀云服务器L实例评测|Docker部署及应用

文章目录

  • 前言
    • 📣 1.前言概述
    • 📣 2.服务器攻击
      • ✨ 2.1 问题描述
      • ✨ 2.2 处理方法
    • 📣 3.Docker简介
    • 📣 4.安装Docker
      • ✨ 4.1 卸载旧版docker
      • ✨ 4.2 安装依赖包
      • ✨ 4.3 安装GPG证书
      • ✨ 4.4 配置仓库
      • ✨ 4.5 正式安装Docker
      • ✨ 4.6 配置用户组
      • ✨ 4.7 运行docker
      • ✨ 4.8 验证docker
    • 📣 5.使用docker

前言

本次给大家首先介绍下如何通过工单的方式解决云服务受到攻击,并带大家通过云耀云服务器L实例进行Docker的部署及应用。

往期回顾:
1.华为云云耀云服务器L实例评测|Ubuntu云服务器申请使用
2.华为云云耀云服务器L实例评测|Ubuntu系统MySQL 8.1.0 Innovation压测

📣 1.前言概述

在上期对文章中,带大家进行Ubuntu系统MySQL 8.1.0,并通过专业工具进行压力测试,我们一起看看性能。整体来看达到了预期的压侧效果。
同时对云服务器性能监控做了详细的描述,本次给大家首先介绍下如何通过工单的方式解决云服务受到攻击,并带大家通过云耀云服务器L实例进行Docker的部署及应用。

在这里插入图片描述

📣 2.服务器攻击

✨ 2.1 问题描述

购买云服务器后,安装了PG数据库后,由于密码设置的过于简单,而且端口也使用的默认的端口,故别恶意攻击,在华为云官网收到了如下的信息
问题描述: 华为云发现您的资源涉及对外攻击行为,该情况已对华为云的服务产生严重影响,违反了国家法律法规及《华为云用户协议》的相关规定。华为云即将对您的异常IP资源进行冻结,并请您采取相关安全防护措施。下午为恶意攻击,异常的信息。

在这里插入图片描述

✨ 2.2 处理方法

1)进入控制台,点开工单
2)新建工单,按照如下图选择相应的信息录入,等待客户消息即可
3)收到客服的反馈后,确实服务很周到,第一时间定位到问题并处理,超级赞!
本次恶意攻击的原因是:您好,对于您咨询的,如沟通针对您的问题这边已经进行了排查,
【造成问题的原因】:疑似postgressql弱口令导致
【解决办法】:客户已删除木马文件并重启主机,已解封ip,为了后续业务安全,方便的话最好是备份重装一下,因为被入侵的主机已经不可信任了,不能排除是不是有其他后门。客户明文暴露您的密码,不利于信息安全,建议工单结束后修改密码,后期linux主机加固建议:1、设置所有OS系统口令(包括管理员和普通用户)、数据库账号口令、应用(WEB)系统管理账号口令为强口令,密码12位以上;将主机登录方式改为秘钥登录彻底规避风险:强口令设置要求参照:https://bbs.huaweicloud.com/blogs/87a98385ec6411e79fc57ca23e93a89f秘钥登录设置参照:https://bbs.huaweicloud.com/blogs/eff0e5af7d7f11e7b8317ca23e93a891
2、严格控制系统管理员账户的使用范围,为应用和中间件配置各自的权限和并严格控制使用范围。禁止不必要的端口直接暴露在公网,设置防火墙规则或配置安全组策略来禁止端口开放情况;非公共开放的业务端口(如SSH),建议设置只允许特定的IP进行连接;安全组配置示例链接如下:https://support.huaweicloud.com/usermanual-vpc/zh-cn_topic_0081124350.html
3、启动安全组白名单策略,根据业务需求对外开放端口,对于特殊业务端口,建议设置固定的来源IP(如:远程登录)或使用VPN、堡垒机建立自己的运维通道。
4.建议定期做好数据备份(虚拟机内部备份,异地备份,云上云下备份等),避免被加密勒索;
5.定期检查系统和软件中的安全漏洞,及时打上补丁
如您的问题已经解决请您点击工单右上角 “关闭工单” 结束本次服务;如果您仍需帮助,请您驳回并留言,我们将继续为您解答。如您在此单授权中,提供了登录密码等机密信息,为了您的资源安全,请您在关单后尽快修改,感谢您的支持与理解,祝您生活愉快!

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

📣 3.Docker简介

可以简单认为,容器是一个超级轻量级的虚拟机(主机),容器和容器之间的进程是相互隔离的。
使用容器给我们带来的好处:
A.供节点,可以当做一台主机来使用,就像使用物理机一样的来使用docker容器
B.可以在一台虚拟机上(192.168.12.12)安装配置2个Mysql实例,它们的端口都是3306端口。
C.可以把我们的应用程序进行打包。软件可以带环境安装?也就是说,安装的时候,把原始环境一模一样地复制过来,开发人员利用 Docker 可以消除协作编码时“在我的机器上可正常工作”的问题。
Docker 利用容器(Container)独立运行的一个或一组应用。容器是用镜像创建的运行实例。它可以被启动、开始、停止、删除。每个容器都是相互隔离的、保证安全的平台。可以把容器看做是一个简易版的 Linux 环境(包括root用户权限、进程空间、用户空间和网络空间等)和运行在其中的应用程序。容器的定义和镜像几乎一模一样,也是一堆层的统一视角,唯一区别在于容器的最上面那一层是可读可写的。

在这里插入图片描述

📣 4.安装Docker

首先要确定自己的操作系统版本,通过以下命令
root@hcss-ecs-7c99:~# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04.1 LTS
Release: 22.04
Codename: jammy
本次我们用的是Ubuntu系统,则按照以下方法进行安装进行,本次安装的是dcoker-ce

✨ 4.1 卸载旧版docker

如果你的云服务器之前已经安装了docker,则按照以下命令卸载原有的docker
root@hcss-ecs-7c99:~# apt-get remove docker docker-engine docker.io containerd runc

✨ 4.2 安装依赖包

##获取最新的软件包
root@hcss-ecs-7c99:~# sudo apt-get update
Hit:1 http://repo.huaweicloud.com/ubuntu jammy InRelease
Get:2 http://repo.huaweicloud.com/ubuntu jammy-updates InRelease [119 kB]
Get:3 http://repo.huaweicloud.com/ubuntu jammy-backports InRelease [109 kB]
Get:4 http://repo.huaweicloud.com/ubuntu jammy-security InRelease [110 kB]
Get:5 http://repo.huaweicloud.com/ubuntu jammy-updates/main amd64 Packages [1,014 kB]
Fetched 1,352 kB in 0s (3,769 kB/s)
Reading package lists… Done
##安装依赖包
root@hcss-ecs-7c99:~# sudo apt-get install ca-certificates curl gnupg lsb-release

✨ 4.3 安装GPG证书

root@hcss-ecs-7c99:~# curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

✨ 4.4 配置仓库

add-apt-repository “deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable”

在这里插入图片描述

✨ 4.5 正式安装Docker

apt-get install docker-ce docker-ce-cli containerd.ioroot@hcss-ecs-7c99:~# sudo docker version
Client: Docker Engine - CommunityVersion:           24.0.6API version:       1.43Go version:        go1.20.7Git commit:        ed223bcBuilt:             Mon Sep  4 12:31:44 2023OS/Arch:           linux/amd64Context:           default
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?默认情况下 Docker的存放位置为:/var/lib/docker
root@hcss-ecs-7c99:~# ll /var/lib/docker
total 44
drwx--x--- 10 root root 4096 Oct  2 10:52 ./
drwxr-xr-x 53 root root 4096 Oct  2 09:43 ../
drwx--x---  2 root root 4096 Oct  2 09:43 containers/
-rw-------  1 root root   36 Oct  2 09:43 engine-id
drwx------  3 root root 4096 Oct  2 09:43 image/
drwxr-x---  3 root root 4096 Oct  2 09:43 network/
drwx--x---  3 root root 4096 Oct  2 10:52 overlay2/
drwx------  4 root root 4096 Oct  2 09:43 plugins/
drwx------  2 root root 4096 Oct  2 10:52 runtimes/
drwx------  2 root root 4096 Oct  2 10:52 tmp/
drwx-----x  2 root root 4096 Oct  2 10:52 volumes/安装必要的一些系统工具
apt-get -y install apt-transport-https ca-certificates curl software-properties-common

在这里插入图片描述

✨ 4.6 配置用户组

默认情况下,只有root用户和docker组的用户才能运行Docker命令。
我们可以将当前用户添加到docker组,以避免每次使用Docker时都需要使用sudo。
命令如下:sudo usermod -aG docker $USER

✨ 4.7 运行docker

1.启动过程有如下报错,解决办法如下
root@hcss-ecs-7c99:~# systemctl start docker
Job for docker.service failed because the control process exited with error code.
See "systemctl status docker.service" and "journalctl -xeu docker.service" for details.root@hcss-ecs-7c99:~# systemctl status docker.service
× docker.service - Docker Application Container EngineLoaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)Active: failed (Result: exit-code) since Mon 2023-10-02 10:52:21 CST; 26s ago
TriggeredBy: × docker.socketDocs: https://docs.docker.comProcess: 80797 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock (code=exited, status=1/FAILURE)Main PID: 80797 (code=exited, status=1/FAILURE)CPU: 104msOct 02 10:52:19 hcss-ecs-7c99 systemd[1]: docker.service: Main process exited, code=exited, status=1/FAILURE
Oct 02 10:52:19 hcss-ecs-7c99 systemd[1]: docker.service: Failed with result 'exit-code'.
Oct 02 10:52:19 hcss-ecs-7c99 systemd[1]: Failed to start Docker Application Container Engine.
Oct 02 10:52:21 hcss-ecs-7c99 systemd[1]: docker.service: Scheduled restart job, restart counter is at 3.
Oct 02 10:52:21 hcss-ecs-7c99 systemd[1]: Stopped Docker Application Container Engine.
Oct 02 10:52:21 hcss-ecs-7c99 systemd[1]: docker.service: Start request repeated too quickly.
Oct 02 10:52:21 hcss-ecs-7c99 systemd[1]: docker.service: Failed with result 'exit-code'.
Oct 02 10:52:21 hcss-ecs-7c99 systemd[1]: Failed to start Docker Application Container Engine.--解决办法如下:
进入 /etc/docker
查看有没有daemon.json文件,如果没有就自己新建一个:
# 添加 docker 配置 /etc/docker/daemon.json
{"registry-mirrors": ["https://registry.docker-cn.com"]
}通过以下方法重名命后,重启服务器即可
mv /etc/docker/daemon.json daemon.confroot@hcss-ecs-7c99:~# systemctl start docker
root@hcss-ecs-7c99:~# systemctl status docker
root@hcss-ecs-7c99:~# systemctl enable docker

在这里插入图片描述

✨ 4.8 验证docker

root@hcss-ecs-7c99:~# docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
719385e32844: Pull complete 
Digest: sha256:4f53e2564790c8e7856ec08e384732aa38dc43c52f02952483e3f003afbf23db
Status: Downloaded newer image for hello-world:latestHello from Docker!
This message shows that your installation appears to be working correctly.To generate this message, Docker took the following steps:1. The Docker client contacted the Docker daemon.2. The Docker daemon pulled the "hello-world" image from the Docker Hub.(amd64)3. The Docker daemon created a new container from that image which runs theexecutable that produces the output you are currently reading.4. The Docker daemon streamed that output to the Docker client, which sent itto your terminal.To try something more ambitious, you can run an Ubuntu container with:$ docker run -it ubuntu bashShare images, automate workflows, and more with a free Docker ID:https://hub.docker.com/For more examples and ideas, visit:https://docs.docker.com/get-started/root@hcss-ecs-7c99:~# docker images
REPOSITORY    TAG       IMAGE ID       CREATED        SIZE
hello-world   latest    9c7a54a9a43c   5 months ago   13.3kB

装为docker后,顺便看了下华为云服务器的监控,一切都好
在这里插入图片描述

📣 5.使用docker

##拥有自己的云服务器Centos7.81)拉取镜像
docker pull daocloud.io/library/centos:centos7.8.2003root@hcss-ecs-7c99:~# docker images
REPOSITORY                   TAG              IMAGE ID       CREATED        SIZE
hello-world                  latest           9c7a54a9a43c   5 months ago   13.3kB
daocloud.io/library/centos   centos7.8.2003   afb6fca791e0   3 years ago    203MB2)创建容器
docker run -d --name centos7.8 -h centos7.8 \
-p 220:22 -p 3387:3389 \
--privileged=true \
daocloud.io/library/centos:centos7.8.2003 /usr/sbin/init3)进入容器
root@hcss-ecs-7c99:~# docker exec -it centos7.8 bash
[root@centos7 /]# cat /etc/redhat-release 
CentOS Linux release 7.8.2003 (Core)
[root@centos7 /]# uname -r
5.15.0-60-generic
[root@centos7 /]# uname -a
Linux centos7.8 5.15.0-60-generic #66-Ubuntu SMP Fri Jan 20 14:29:49 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux非常开心,已经拥有自己的一台服务器了,后期可以做一些应用部署

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

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

相关文章

PG 多表连接查询

写法: 使用 select 表名.键名 from 表1 join表2 on 相同的主键 构造出来一张新表 多表要用表名.键名 才能知道是哪一张表 传统写法也行 类型: 内 而外的要这样写

动态规划-状态机(188. 买卖股票的最佳时机 IV)

状态分类: f[i,j,0]考虑前i只股票,进行了j笔交易,目前未持有股票 所能获得最大利润 f[i,j,1]考虑前i只股票,进行了j笔交易,目前持有股票 所能获得最大利润 状态转移: f[i][j][0] Math.max(f[i-1][j][0],f[…

lv7 嵌入式开发-网络编程开发 07 TCP服务器实现

目录 1 函数介绍 1.1 socket函数 与 通信域 1.2 bind函数 与 通信结构体 1.3 listen函数 与 accept函数 2 TCP服务端代码实现 3 TCP客户端代码实现 4 代码优化 5 练习 1 函数介绍 其中read、write、close在IO中已经介绍过,只需了解socket、bind、listen、acc…

Qt+openCV学习笔记(十六)Qt6.6.0rc+openCV4.8.1+emsdk3.1.37编译静态库

前言: 有段时间没来写文章了,趁编译库的空闲,再写一篇记录文档 WebAssembly的发展逐渐成熟,即便不了解相关技术,web前端也在不经意中使用了相关技术的库,本篇文档记录下如何编译WebAssembly版本的openCV&…

13.(开发工具篇github)如何在GitHub上上传本地项目

一:创建GitHub账户并安装Git 二:创建一个新的仓库(repository) 三、拉取代码 git clone https://github.com/ainier-max/myboot.git git clone git@github.com:ainier-max/myboot.git四、拷贝代码到拉取后的工程 五、上传代码 (1)添加所有文件到暂存

Mac安装Ecplise产品报错:dose not contain the JNI_CreateJavaVM symbol

1. 絮絮叨叨 工作中需要借助Ecplise Memory Analyzer (MAT)分析dump文件,直接下载、安装、运行MAT报错 询问同事后,同事说可以先安装Ecplise,再以插件的形式安装MAT下载、安装好Eclipse,点击运行仍然报错,且错误信息一…

【C语言】循环结构程序设计 (详细讲解)

前言:前面介绍了程序中常常用到的顺序结构和选择结构,但是只有这两种结构是不够的,还有用到循环结构(或者称为重复结构)。因为在日常生活中或是在程序所处理的问题中常常遇到需要重复处理的问题。 【卫卫卫的代码仓库】 【选择结构】 【专栏链…

springmvc-JSR303进行服务端校验分组验证SpringMVC定义Restfull接口异常处理流程RestController异常处理

目录& 1. JSR303 2. JSR303中含有的注解 3. spring中使用JSR303进行服务端校验 3.1 导入依赖包 3.2 添加验证规则 3.3 执行校验 4. 分组验证 4.1 定义分组验证规则 4.2 验证时通过参数指定验证规则 4.3 验证信息的显示 5. SpringMVC定义Restfull接口 5.1 增加s…

分类预测 | MATLAB实现PSO-CNN粒子群算法优化卷积神经网络数据分类预测

分类预测 | MATLAB实现PSO-CNN粒子群算法优化卷积神经网络数据分类预测 目录 分类预测 | MATLAB实现PSO-CNN粒子群算法优化卷积神经网络数据分类预测分类效果基本描述程序设计参考资料 分类效果 基本描述 1.Matlab实现PSO-CNN多特征分类预测,多特征输入模型&#xf…

Webpack 基础入门以及接入 CSS、Typescript、Babel

一、什么是 Webpack Webpack 是一款 JS 模块化开发的技术框架,其运作原理是将多个 JS 文件关联起来构成可运行的应用程序。 Webpack 拥有丰富的 plugins / loaders 插件生态圈,可以让 js 识别不同的语言如 .css, .scss, .sass, .json, .xml, .ts, .vue…

Web版Photoshop来了,用到了哪些前端技术?

经过 Adobe 工程师多年来的努力,并与 Chrome 等浏览器供应商密切合作,通过 WebAssembly Emscripten、Web Components Lit、Service Workers Workbox 和新的 Web API 的支持,终于在近期推出了 Web 版 Photoshop(photoshop.adobe…

BL808学习日志-2-LVGL for M0 and D0

一、lvgl测试环境 对拿到的M1S_DOCK开发板进行开发板测试,博流的官方SDK是支持M0和D0两个内核都进行测试的;但是目前只实现了M0的LVGLBenchmark,测试D0内核中发现很多莫名其妙的问题。一会详细记录。 使用的是开发板自带的SPI显示屏&#xff…

wzsc_文件上传(条件竞争)

打开题目链接,很常见的文件上传框 经过尝试,发现上传东西后会调用upload.php,猜测文件被传到upload目录下 随便传了几个类型的文件,访问upload目录 发现.php文件以及.htaccess、.user.ini这种配置文件都没有传上去 但是通过抓包…

Redis相关概念

1. 什么是Redis?它主要用来什么的? Redis,英文全称是Remote Dictionary Server(远程字典服务),是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提…

深入探讨 Presto 中的缓存

【squids.cn】 全网zui低价RDS,免费的迁移工具DBMotion、数据库备份工具DBTwin、SQL开发工具等 Presto是一种流行的开源分布式SQL引擎,使组织能够在多个数据源上大规模运行交互式分析查询。缓存是一种典型的提高 Presto 查询性能的优化技术。它为 Prest…

阿里云新账户什么意思?老用户、产品首购详细说明

阿里云新账户、老账号、产品首购和同人账号什么意思?阿里云账号分为云新账户、老账户、产品首购、同人账号和同一用户,阿里云官方推出的活动很多是限制账号类型的,常见的如阿里云新用户,什么是阿里云新用户?是指从未在…

408计网应用层总结

网络应用模型 ■客户/服务器模型(C/S):客户是服务请求方,服务器是服务提供方 ■P2P模型:各主机都是客户,也都是服务器(任意一对计算机成称为对等方) 注: 1.客户…

Overloud TH-U Complete for Mac:演绎您的音乐世界

Overloud TH-U Complete for Mac是一款功能强大的吉他谱曲软件,可以让您在Mac电脑上轻松进行吉他模拟、录音和混音等操作,创作属于自己的音乐作品。 Overloud TH-U Complete for Mac提供了丰富的吉他模拟和音效库,涵盖了多种吉他放大器、箱体…

计算机考研 | 2016年 | 计算机组成原理真题

文章目录 【计算机组成原理2016年真题44题-9分】【第一步:信息提取】【第二步:具体解答】 【计算机组成原理2016年真题45题-14分】【第一步:信息提取】【第二步:具体解答】 【计算机组成原理2016年真题44题-9分】 假定CPU主频为5…

Docker项目部署

目录 一、前端项目部署 1、上传文件 2、开启容器 3、测试 二、后端项目部署 1、打包java项目 2、将jar包和Dockerfile文件长传到Linux系统 3、构建镜像 4、开启容器 5、测试 三、DockerCompose快速部署 基本语法 一、前端项目部署 1、上传文件 里面包括页面和配置文…