当前位置: 首页 > news >正文

【面向就业的Linux基础】从入门到熟练,探索Linux的秘密(十四)-租云服务器及配环境、docker基本命令

主要介绍了租云服务器和docker配置、基本命令!!!

文章目录

前言

一、云平台

二、租云服务器及安装docker

1.阿里云

 2.安装docker

三、docker命令

 将当前用户添加到docker用户组

镜像(images)

 容器(container)

 四、实战

总结


前言

主要介绍了租云服务器和docker配置、基本命令!!!


提示:以下是本篇文章正文内容,下面案例可供参考

一、云平台

云平台的作用:

  • 存放我们的docker容器,让计算跑在云端。
  • 获得公网IP地址,让每个人可以访问到我们的服务。

任选一个云平台即可,推荐配置:

  • 1核 2GB(后期可以动态扩容,前期配置低一些没关系)
  • 网络带宽采用按量付费,最大带宽拉满即可(费用取决于用量,与最大带宽无关)
  • 系统版本:ubuntu 20.04 LTS(推荐用统一版本,避免后期出现配置不兼容的问题) 

 

二、租云服务器及安装docker

1.阿里云

阿里云地址:https://www.aliyun.com/ 

进入官网,注册账号后打开控制台,找到云服务器ECS,创建实例即可

登录到新服务器。打开终端,然后:

ssh root@xxx.xxx.xxx.xxx  # xxx.xxx.xxx.xxx替换成新服务器的公网IP

创建acs用户: 

adduser acs  # 创建用户acs
usermod -aG sudo acs  # 给用户acs分配sudo权限

 退回到终端,然后配置acs用户的别名和免密登录,可参考ssh教程这篇博客

配置新服务器的工作环境 

将终端的配置传到新服务器上:

scp .bashrc .vimrc .tmux.conf server_name:  # server_name需要换成自己配置的别名

安装tmux和docker
登录自己的服务器,然后安装tmux: 

sudo apt-get update
sudo apt-get install tmux

 2.安装docker

sudo apt-get update
sudo apt-get install \apt-transport-https \ca-certificates \curl \gnupg \lsb-release

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

 如果上述镜像无法使用,那么采用下面这个这个镜像:

sudo curl -fsSL https://github.com/tech-shrimp/docker_installer/releases/download/latest/linux.sh| bash -s docker --mirror Aliyun

如果github连接不上的话,可以连接国内的gitee:

sudo curl -fsSL https://gitee.com/tech-shrimp/docker_installer/releases/download/latest/linux.sh| bash -s docker --mirror Aliyun

 可以用一下命令查看docker版本:

docker --version

 

可以自己安装很多东西,例如安装tree命令:

sudo apt-get install tree

三、docker命令

Docker 是一个开源的应用容器引擎,让开发者能够打包应用及其所有依赖项到一个可移植的容器中,然后发布到任何支持 Docker 的环境中运行。

Docker 利用容器化技术,将应用程序及其依赖项打包到一个独立的容器中。每个容器是一个独立、安全的运行环境,可以在同一主机上共享操作系统内核,但相互之间互相隔离。

Docker 容器可以在任何支持 Docker 的平台上运行,包括开发环境、测试环境、生产环境,甚至是云服务提供商的环境中。

Docker 容器通过镜像来进行打包和发布。镜像可以基于基础镜像进行扩展和定制,支持版本控制,方便复用和分享。

Docker 提供了 Docker Compose、Docker Swarm、Kubernetes 等容器编排工具,帮助管理和编排多个容器,实现高可用、负载均衡等功能。

 将当前用户添加到docker用户组

为了避免每次使用docker命令都需要加上sudo权限,可以将当前用户加入安装中自动创建的docker用户组

sudo usermod -aG docker $USER

 执行完此操作后,需要退出服务器,再重新登录回来,才可以省去sudo权限。

镜像(images)

docker pull ubuntu:20.04:拉取一个镜像

 如果拉取镜像超时,可以参考这篇博客,里面有解决办法!!!

docker pull超时解决办法

docker images:列出本地所有镜像

docker image rm ubuntu:20.04 或 docker rmi ubuntu:20.04:删除镜像ubuntu:20.04

docker [container] commit CONTAINER IMAGE_NAME:TAG:创建某个container的镜像
docker save -o ubuntu_20_04.tar ubuntu:20.04:将镜像ubuntu:20.04导出到本地文件ubuntu_20_04.tar中

 

docker load -i ubuntu_20_04.tar:将镜像ubuntu:20.04从本地文件ubuntu_20_04.tar中加载出来

将服务器上的镜像压缩包传到本地

scp server1:ubuntu_20_04.tar .

删除 <none> 标签的镜像: 找到所有标签为 <none> 的镜像,并逐个删除。可以使用以下命令:

docker rmi $(docker images -f "dangling=true" -q)

将删除所有标签为 <none> 的镜像。 

 将镜像上传到自己租的云端服务器:

scp ubuntu_20_04.tar myserver:

加载本地的压缩包镜像

docker load -i ubuntu_20_04.tar

 

 容器(container)

docker [container] create -it ubuntu:20.04:利用镜像ubuntu:20.04创建一个容器。

 

docker ps -a:查看本地的所有容器

 

docker [container] start CONTAINER:启动容器

 

docker [container] stop CONTAINER:停止容器
docker [container] restart CONTAINER:重启容器
docker [contaienr] run -itd ubuntu:20.04:创建并启动一个容器
docker [container] attach CONTAINER:进入容器
  • 先按Ctrl-p,再按Ctrl-q可以挂起容器 

docker [container] exec CONTAINER COMMAND:在容器中执行命令

docker [container] rm CONTAINER:删除容器
docker container prune:删除所有已停止的容器
docker export -o xxx.tar CONTAINER:将容器CONTAINER导出到本地文件xxx.tar中

 

docker import xxx.tar image_name:tag:将本地文件xxx.tar导入成镜像,并将镜像命名为image_name:tag
docker export/import与docker save/load的区别:
  •  export/import会丢弃历史记录和元数据信息,仅保存容器当时的快照状态
  • save/load会保存完整记录,体积更大

docker top CONTAINER:查看某个容器内的所有进程

docker stats:查看所有容器的统计信息,包括CPU、内存、存储、网络等信息

docker cp xxx CONTAINER:xxx 或 docker cp CONTAINER:xxx xxx:在本地和容器间复制文件

 

docker rename CONTAINER1 CONTAINER2:重命名容器
docker update CONTAINER --memory 500MB:修改容器限制

 四、实战

scp /var/lib/acwing/docker/images/docker_lesson_1_0.tar server_name:  # 将镜像上传到自己租的云端服务器
ssh server_name  # 登录自己的云端服务器docker load -i docker_lesson_1_0.tar  # 将镜像加载到本地
docker run -p 20000:22 --name my_docker_server -itd docker_lesson:1.0  # 创建并运行docker_lesson:1.0镜像docker attach my_docker_server  # 进入创建的docker容器
passwd  # 设置root密码

 

 

去云平台控制台中修改安全组配置,放行端口20000。

返回AC Terminal,即可通过ssh登录自己的docker容器:

ssh root@xxx.xxx.xxx.xxx -p 20000  # 将xxx.xxx.xxx.xxx替换成自己租的服务器的IP地址

总结

主要介绍了租云服务器和docker配置、基本命令!!!

相关文章:

【面向就业的Linux基础】从入门到熟练,探索Linux的秘密(十四)-租云服务器及配环境、docker基本命令

主要介绍了租云服务器和docker配置、基本命令&#xff01;&#xff01;&#xff01; 文章目录 前言 一、云平台 二、租云服务器及安装docker 1.阿里云 2.安装docker 三、docker命令 将当前用户添加到docker用户组 镜像&#xff08;images&#xff09; 容器(container) 四、实战…...

实现一个全栈模糊搜索匹配的功能

提供一个全栈实现的方案&#xff0c;包括 Vue 3 前端、Express 后端和 MySQL 数据库的分类模糊搜索功能。让我们逐步来看&#xff1a; 1. 数据库设计 (MySQL) 首先&#xff0c;我们需要一个存储分类的表&#xff1a; CREATE TABLE categories (id INT AUTO_INCREMENT PRIMAR…...

智慧景区导览系统小程序开发

智慧景区导览系统小程序的开发是一个综合性的过程&#xff0c;旨在通过先进的技术手段提升游客的游览体验。以下是开发智慧景区导览系统小程序的主要步骤和关键点&#xff1a; 一、需求分析 市场调研&#xff1a;了解旅游市场的最新趋势和游客的实际需求&#xff0c;包括游客…...

HIVE调优方式及原因

3.HIVE 调优&#xff1a; 需要调优的几个方面&#xff1a; 1.HIVE语句执行不了 2.HIVE查询语句&#xff0c;在集群中执行时&#xff0c;数据无法落地 HIVE执行时&#xff0c;一开始语句检查没有问题&#xff0c;生成了多个JOB&#xff0c; …...

deploy local llm ragflow

CPU > 4 cores RAM > 16 GB Disk > 50 GB Docker > 24.0.0 & Docker Compose > v2.26.1 下载docker&#xff1a; 官方下载方式&#xff1a;https://docs.docker.com/desktop/install/ubuntu/ 其中 DEB package需要手动下载并传输到服务器 国内下载方式&…...

测桃花运(算姻缘)的网站系统源码

简介&#xff1a; 站长安装本源码后只要有人在线测算&#xff0c;就可以获得收入哦。是目前市面上最火的变现利器。 本版本无后台&#xff0c;无数据。本版本为开发的逗号联盟接口版本。直接对接逗号联盟&#xff0c;修改ID就可以直接运营收费赚钱。 安装环境&#xff1a;PH…...

电商平台优惠券

优惠券业务逻辑 优惠券的发放&#xff1a; 来源&#xff1a;优惠券可以由平台统一发放&#xff0c;也可以由商家自行发放。平台优惠券的优惠由平台承担&#xff0c;而店铺优惠券则由商家承担。类型&#xff1a;优惠券可以分为满减优惠券、无门槛优惠券等&#xff0c;根据使用限…...

内衣洗衣机多维度测评对比,了解觉飞、希亦、鲸立哪款内衣洗衣机更好

想要代替手洗内衣物&#xff0c;那么一台内衣专用的小型洗衣机就必不可少啦&#xff0c;不仅能够为我们节约更多的时间以及精力&#xff0c;还能大大提高内衣物的卫生&#xff0c;面对于市面上各种各样的小型内衣洗衣机&#xff0c;相信很多小伙伴都无从下手&#xff01; 为一…...

数据结构和算法入门

1.了解数据结构和算法 1.1 二分查找 二分查找&#xff08;Binary Search&#xff09;是一种在有序数组中查找特定元素的搜索算法。它的基本思想是将数组分成两半&#xff0c;然后比较目标值与中间元素的大小关系&#xff0c;从而确定应该在左半部分还是右半部分继续查找。这个…...

基于OpenCV C++的网络实时视频流传输——Windows下使用TCP/IP编程原理

1.TCP/IP编程 1.1 概念 IP 是英文 Internet Protocol &#xff08;网络之间互连的协议&#xff09;的缩写&#xff0c;也就是为计算机网络相互连接进行通信而设计的协议。任一系统&#xff0c;只要遵守 IP协议就可以与因特网互连互通。 所谓IP地址就是给每个遵循tcp/ip协议连…...

(BS ISO 11898-1:2015)CAN_FD 总线协议详解6- PL(物理层)规定3

目录 6.4 AUI 规范 6.4.1 一般规定 6.4.2 PCS 到 PMA 消息 6.4.2.1 输出消息 6.4.2.2 Bus_off 消息 6.4.2.3 Bus_off 释放消息 6.4.2.4 FD_Transmit 消息 6.4.2.5 FD_Receive 消息 6.4.3 PMA 到 PCS 消息 6.4.3.1 输入消息 如果有不懂的问题可在评论区点赞后留言&…...

docker环境下php安装扩展步骤 以mysqli为例

docker环境下php安装扩展步骤 以mysqli为例 1.0 前言2.0 php 扩展安装原理3.0 docker 环境下 php 扩展安装3.1 docker php 容器扩展安装路径及原理3.2 docker php 扩展脚本安装过程 同步发布在个人笔记[docker环境下php安装扩展步骤 以mysqli为例]( https://blog.lichenrobo.co…...

医院综合绩效核算系统,绩效核算系统源码,采用springboot+avue+MySQL技术开发,可适应医院多种绩效核算方式。

一、系统概述 作为医院用综合绩效核算系统&#xff0c;系统需要和his系统进行对接&#xff0c;按照设定周期&#xff0c;从his系统获取医院科室和医生、护士、其他人员工作量&#xff0c;对没有录入信息化系统的工作量&#xff0c;绩效考核系统设有手工录入功能&#xff08;可…...

ROOM数据快速入门

ROOM数据库快速入门 文章目录 ROOM数据库快速入门第一章 准备工作第01节 引入库第02节 布局文件第03节 activity类第04节 效果图 第二章 数据类第01节 实体类&#xff08;表&#xff09;第02节 数据访问类&#xff08;DAO&#xff09;第03节 数据Service层第04节 RoomDataBase …...

刷新,前面接口的返回值没有到,第二个接口已经请求完了,导致第二个接口返回数据错误

刷新&#xff0c;前面接口的返回值没有到&#xff0c;&#xff08;前端&#xff09;第二个接口已经请求完了&#xff08;入参没有拿前面那个接口返回的数据&#xff09;&#xff0c;导致第二个接口返回数据错误...

pdcj设计

为了实现这些功能需求&#xff0c;我们需要设计多个数据库表来存储相关的数据&#xff0c;并编写相应的Java代码来处理业务逻辑。下面是各个功能需求对应的MySQL表结构以及部分Java代码示例。 商品设置管理 商品分类管理 商品分类表 (product_categories)CREATE TABLE produ…...

【数据结构】哈希表的模拟实现

文章目录 1. 哈希的概念2. 哈希表与哈希函数2.1 哈希冲突2.2 哈希函数2.3 哈希冲突的解决2.3.1 闭散列&#xff08;线性探测&#xff09;2.3.2 闭散列的实现2.3.3 开散列(哈希桶)2.3.4 开散列的实现 2.4 开散列与闭散列比较 1. 哈希的概念 在我们之前所接触到的所有的数据结构…...

面试经典算法150题系列-数组/字符串操作之多数元素

序言&#xff1a;今天是第五题啦&#xff0c;前面四题的解法还清楚吗&#xff1f;可以到面试算法题系列150题专栏 进行复习呀。 温故而知新&#xff0c;可以为师矣&#xff01;加油&#xff0c;未来的技术大牛们。 多数元素 给定一个大小为 n 的数组 nums &#xff0c;返回其…...

海南云亿商务咨询有限公司领航抖音电商服务

在当下这个瞬息万变的互联网时代&#xff0c;短视频平台尤其是抖音&#xff0c;正以惊人的速度重塑着消费者的购物习惯与商家的营销版图。在这场电商盛宴中&#xff0c;海南云亿商务咨询有限公司凭借其在抖音电商领域的深厚积累与前瞻视野&#xff0c;正逐步成为众多商家转型升…...

C#初级——继承

继承 继承是面向对象程序设计中最重要的概念之一。继承允许我们根据一个类来定义另一个类&#xff0c;不需要完全重新编写新的数据成员和成员函数&#xff0c;只需要设计一个新的类&#xff0c;继承了已有的类的成员即可。这个已有的类被称为的基类&#xff08;父类&#xff0…...

Vim 调用外部命令学习笔记

Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…...

Lombok 的 @Data 注解失效,未生成 getter/setter 方法引发的HTTP 406 错误

HTTP 状态码 406 (Not Acceptable) 和 500 (Internal Server Error) 是两类完全不同的错误&#xff0c;它们的含义、原因和解决方法都有显著区别。以下是详细对比&#xff1a; 1. HTTP 406 (Not Acceptable) 含义&#xff1a; 客户端请求的内容类型与服务器支持的内容类型不匹…...

论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)

HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...

树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频

使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源&#xff1a; http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...

SCAU期末笔记 - 数据分析与数据挖掘题库解析

这门怎么题库答案不全啊日 来简单学一下子来 一、选择题&#xff08;可多选&#xff09; 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘&#xff1a;专注于发现数据中…...

UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)

UR协作机器人正以其卓越性能在现代制造业自动化中扮演重要角色。UR7e、UR12e和UR15通过创新技术和精准设计满足了不同行业的多样化需求。其中&#xff0c;UR15以其速度、精度及人工智能准备能力成为自动化领域的重要突破。UR7e和UR12e则在负载规格和市场定位上不断优化&#xf…...

代理篇12|深入理解 Vite中的Proxy接口代理配置

在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...

RSS 2025|从说明书学习复杂机器人操作任务:NUS邵林团队提出全新机器人装配技能学习框架Manual2Skill

视觉语言模型&#xff08;Vision-Language Models, VLMs&#xff09;&#xff0c;为真实环境中的机器人操作任务提供了极具潜力的解决方案。 尽管 VLMs 取得了显著进展&#xff0c;机器人仍难以胜任复杂的长时程任务&#xff08;如家具装配&#xff09;&#xff0c;主要受限于人…...

【JVM】Java虚拟机(二)——垃圾回收

目录 一、如何判断对象可以回收 &#xff08;一&#xff09;引用计数法 &#xff08;二&#xff09;可达性分析算法 二、垃圾回收算法 &#xff08;一&#xff09;标记清除 &#xff08;二&#xff09;标记整理 &#xff08;三&#xff09;复制 &#xff08;四&#xff…...