当前位置: 首页 > 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…...

阿里云ACP云计算备考笔记 (5)——弹性伸缩

目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统

医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上&#xff0c;开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识&#xff0c;在 vs 2017 平台上&#xff0c;进行 ASP.NET 应用程序和简易网站的开发&#xff1b;初步熟悉开发一…...

leetcodeSQL解题:3564. 季节性销售分析

leetcodeSQL解题&#xff1a;3564. 季节性销售分析 题目&#xff1a; 表&#xff1a;sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...

全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比

目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec&#xff1f; IPsec VPN 5.1 IPsec传输模式&#xff08;Transport Mode&#xff09; 5.2 IPsec隧道模式&#xff08;Tunne…...

有限自动机到正规文法转换器v1.0

1 项目简介 这是一个功能强大的有限自动机&#xff08;Finite Automaton, FA&#xff09;到正规文法&#xff08;Regular Grammar&#xff09;转换器&#xff0c;它配备了一个直观且完整的图形用户界面&#xff0c;使用户能够轻松地进行操作和观察。该程序基于编译原理中的经典…...

C/C++ 中附加包含目录、附加库目录与附加依赖项详解

在 C/C 编程的编译和链接过程中&#xff0c;附加包含目录、附加库目录和附加依赖项是三个至关重要的设置&#xff0c;它们相互配合&#xff0c;确保程序能够正确引用外部资源并顺利构建。虽然在学习过程中&#xff0c;这些概念容易让人混淆&#xff0c;但深入理解它们的作用和联…...

搭建DNS域名解析服务器(正向解析资源文件)

正向解析资源文件 1&#xff09;准备工作 服务端及客户端都关闭安全软件 [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0 2&#xff09;服务端安装软件&#xff1a;bind 1.配置yum源 [rootlocalhost ~]# cat /etc/yum.repos.d/base.repo [Base…...

tomcat指定使用的jdk版本

说明 有时候需要对tomcat配置指定的jdk版本号&#xff0c;此时&#xff0c;我们可以通过以下方式进行配置 设置方式 找到tomcat的bin目录中的setclasspath.bat。如果是linux系统则是setclasspath.sh set JAVA_HOMEC:\Program Files\Java\jdk8 set JRE_HOMEC:\Program Files…...

HTML前端开发:JavaScript 获取元素方法详解

作为前端开发者&#xff0c;高效获取 DOM 元素是必备技能。以下是 JS 中核心的获取元素方法&#xff0c;分为两大系列&#xff1a; 一、getElementBy... 系列 传统方法&#xff0c;直接通过 DOM 接口访问&#xff0c;返回动态集合&#xff08;元素变化会实时更新&#xff09;。…...

离线语音识别方案分析

随着人工智能技术的不断发展&#xff0c;语音识别技术也得到了广泛的应用&#xff0c;从智能家居到车载系统&#xff0c;语音识别正在改变我们与设备的交互方式。尤其是离线语音识别&#xff0c;由于其在没有网络连接的情况下仍然能提供稳定、准确的语音处理能力&#xff0c;广…...