快速搭建 Linux 学习平台

最近换了一个新的笔记本电脑,原来的学习环境没了,所以就重新搭建一下,顺便把这个过程给记录下来,希望可以帮助有需要的人。一个学习环境最主要的目的是简化学习需要准备的时间,不需要花费太多的时间在哪些不必要的细枝末节上面。

这里主要分成以下几部分:

  • 安装虚拟机
  • 下载 Linux 镜像
  • 安装 Docker
  • 拉取镜像
  • 使用镜像

现在容器化大行其道,以前传统的在系统上直接安装软件的方式也应该有所转变,特别是有些软件安装过程并不是很容易。通常花费大量时间,也不会有很大的回报,最多是让你对软件的安装过程变得更有耐心了。

安装虚拟机

这里我选择的是 VMware Workstation Player 的最新版本,它对于个人用户是免费的。为什么不使用 WSL 呢?老实说,我还是不太习惯 WSL,比如它的 IP 怎么固定就很难解决。再加上我对于虚拟机软件还是挺熟悉的,所以就沿用以前的习惯了。

下载 VMware Workstation Player | VMware | CN

在这里插入图片描述

点击立即下载即可,虽然是试用,但是我们它是可以个人免费使用的,因此不需要担心付费或者盗版的问题。

下载 Linux 镜像

Linux 系统的话,我比较熟悉的发行版是 Ubuntu,大学的时候就接触了,对于它比较熟悉。如果,你不熟悉的话,推荐和我一样选择它;或者选择适合你自己的 Linux 发行版。

下载Ubuntu桌面系统 | Ubuntu

选择最新的,或者次新的版本就行了。

然后就是在 VMware 中创建你自己的虚拟机就行了,这个步骤省略了。要自己多探索以下,网上的教程还是蛮丰富的。

注:默认的源比较慢,可以自行切换国内的源。

这是我虚拟机配置,我的笔记本是 32G 的,所以我的配置比推荐配置要高。

在这里插入图片描述

安装 Docker

前面说了,因为现在容器化大行其道,所以我们也直接用容器化的方式来安装软件或者服务,并不是直接在 Linux 系统上面安装。所以,接下来我们来安装 Docker。

菜鸟教程-Ubuntu Docker 安装

在这里插入图片描述

推荐非 root 用户使用 Docker,这是出于安全方面的考虑。

在这里插入图片描述

快速演示

好了,万事俱备,只欠东风了。我们直接开始使用它吧!这里我以 MySQL 为例子来做一个快速的演示。

拉取 MySQL 镜像(tag:8.0) docker pull mysql:8.0,这个我之前已经拉取过了(网络不好的话,会有点慢,需要自己想办法解决,可以试试阿里云加速或者你可以从别人那里导入一个镜像)。

在这里插入图片描述

启动一个新的容器(菜鸟教程提供了很多服务的启动方式) docker run -d --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql,这里 -e 是指定了一个环境变量(environment),只指定了一个密码(这就够了,关于配置的信息其实不是那么重要的,开发还是要多专注自己的领域)。

因为我之前已经启动过了 MySQL 容器,所以我现在直接启动已经停止的容器:docker start mysql,不再启动一个新的容器。然后是连接到容器:docker exec -it mysql bash ,这条命令的意思是连接到我们运行的名为 mysql 的 MySQL 容器,并启动一个交互式的终端 bash。

在这里插入图片描述

开启终端后,输入 mysql -uroot -p 并回车,接着输入密码(密码是我们启动容器时指定的 123456),然后我们来查看 MySQL 默认的事务隔离级别(事务默认的隔离级别是 REPEATABLE-READ,简称 RR,即可重复读):

在这里插入图片描述
注:我这里的 MySQL 版本是 8.0,所以事务隔离级别的名称是 transaction_isolation,不是 tx_isolation 了。

总结

好了,到此就结束了,这个搭建的环境是可复用的,以后也是一直可以使用的。如果你也需要一个这样的环境的话,最好是亲自动手试一试。有了 Docker 之后,学习各种软件都会很方便的。在我大学那会,我还没有接触 docker 时,安装软件总是特别复杂的,各种配置,要是弄错了,可麻烦了。现在使用 docker 以后,那就简单多了。甚至,现在的开发都直接在 docker 容器中进行了,本地连开发环境都不需要了。如果你对这个感兴趣,可以来这里了解一下:Development Containers。

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

ZD Soft Screen Recorder 注册汉化版 【好用的屏幕录制软件】

ZD Soft Screen Recorder 汉化版捕获计算机屏幕上的内容与声音,并保存为各种格式压缩的视频文件。你在屏幕上看到的一切都可以在高帧速率连续进行记录。其结果视频在记录时间内清晰再现画面内容,所以是声音。 ZD Soft Screen Recorder 也能够拍摄图像的截…

树莓派控制ZD-8731两相步进电机驱动器

之前写过一篇驱动步进电机的文章,可以跟这篇参考着看。请戳这里! 一、硬件: 树莓派3B ZD-8731驱动器 与驱动器配套的步进电机 电源 驱动器需要24V电源供电(用电很危险,请注意安全!) 二、…

linux内核编译无线网卡,ZD1211B芯片USB无线网卡Linux驱动的编译

我用的无线网卡芯片是zd1211b的,在网上找到很多驱动都不好用,最后在这里上找到好用的驱动 我们用的Linux内核是2.6.14的。驱动的交叉编译非常简单,在其Makefile中修改交叉编译器,然后把相应的KERNEL_SOURCE,MODPATH&am…

c -2 数组 指针 %zd 结构体

数组的初始化方式 初始化方式 int a[3] {10, 9, 6};int a[3] {10,9};int a[] {11, 7, 6};int a[4] {[1]11,[0] 7}; 数组与函数 数组作为函数参数,可以省略元素个数. 数组作为函数参数.传递是整个数组的地址,修改函数形参, 数组元素的值,会影响到外面的实参数组. 数组当做函…

特别好用的录屏软件--ZD Soft Screen Recorder_8.0

亲测,特别好用的一款录屏软件,大小仅有2.14M 免安装,即开即用 下载地址:https://download.csdn.net/download/smwykao/10391461

ORCALE触发器使用生成自增长的编号('zd20183290001')

本人是个新手,大佬们多多关照! 目前在学习oracle数据库,现在简单的使用触发器来生成字符串自增长编号(zd20183290001); -- 1. 首先创建一个用户表:TEST_USER;字段:ID,NAME DROP TABLE TEST_USER; CREA…

VE 海外新闻 ZD活动

ZD运动 在上一期也有介绍最近在产业界中,作为成本降低的一种手Zero Defects(ZD)运动开始急速流行了起来。 ZD运动最初开始于1962年左右,是在美国国防产业的龙头企业马丁公司的奥兰多事业部开始的。之后ZD运动不仅局限于制造领域&a…

发光二极管pcb封装图画法_电子元器件认识与使用ZD43 | 贴片74HC138 原理图PCB库 封装尺寸 | 视频教程...

购买电子芯原创视频教程完整版后,进专属答疑群,答疑为长期永久答疑,任何关于教程学习的问题都可以问。 答疑方式如下: 1、通过微信群语音或者文字的形式进行答疑(简单的问题); 2、通过微信私信我,语音或者文…

移植SFUD,驱动SPI FLASH ZD25WQ80

1、关于SFUD SFUD (Serial Flash Universal Driver) 串行 Flash 通用驱动库,支持众多spi flash,关于SFUD的详细资料可参考:https://github.com/armink/SFUD。 2、为什么会有通用驱动 JEDEC (固态技术协会)针对串行 …

stm32hal库应用笔记之 硬件I2C读写ZD24C64

话不多说 直接上资料 这是ZD24C64 数据手册里面的读写操作时序。 数据手册网上有很多相信大家也能随便就找到。 如下图所示: 这是使用iic按字节写操作 器件地址:我的是0xA0 来不及解释了赶快上车: 在下使用的是STM32_CubeIDE,个人觉得还是…

ZD680无人机组装调试流程

在权盛电子店里买了ZD680无人机套装,记录拼装调试的大体流程。 下面部分操作说明来源于权盛电子提供的教程。 一、配置清单 机架:ZD680,轴距680mm,机臂直径20mm,材质碳纤,载重3kg 电机:致盈…

麒麟系统在FT2000+下预留连续物理内存空间

1、背景介绍 项目需要在系统下预留一段连续物理地址空间供FPGA启动DMA直接写入,这样提高读写带宽。目前有两种方式可以实现该需求。 注意:前提是操作系统将内存空间访问权限全部放开,否则无法预留空间。 2、实现方法 方式一: …

适用于vue3中图片全屏展示

App中的代码片段 <style scoped> .container {background: url("./assets/back2.jpg");height: 100%;width: 100%;position: fixed;background-size: 100% 100%; } </style>

单机部署多个 nginx

为方便测试&#xff0c;单机部署多个 nginx&#xff0c;监听不同端口&#xff0c;响应不同页面。以其中一个为例&#xff1a; 1、新建目录&#xff1a; /root/nginx/8571/ /root/nginx/8571/html/ /root/nginx/8571/log/ 2、将文件&#xff1a;/usr/sbin/nginx 拷贝至 /root/n…

Ubuntu系统设置开机自启

在测试国产操作系统&#xff1a;银河麒麟、UOS统信机器的过程中&#xff0c;发现开机不自启&#xff0c;总结以下几种方式实现自启 一.rc.local rc.local脚本是一个Ubuntu开机后自动执行的脚本&#xff0c;可以在脚本内添加行指令&#xff0c;该脚本位于/etc/路径下&#xff…

linux系统的服务器怎么设置上电自启,Linux系统开机自启流程

第一步:POST(Power On Safe Test)加电自检 当按下电源键以后,CPU因为有电流通过便开始对自身、I/O设备、内存等硬件进行检验。那么CPU如何得知这些自检指令?我们知道指令存在于内存当中,寻找内存也需要指令。这看起来似乎是一个“死结”。如何解决呢?在CPU生厂商生产CPU的…

Nginx服务器启停命令

Nginx服务器启停命令 nginx安装好后&#xff0c;维护和更新&#xff0c;经常使用到启动和停止nginx服务。现主要介绍两种方式&#xff1a; 1、nginx服务器的信号控制 nginx中的master 和worker 进程是什么&#xff1f;nginx的工作方式是什么&#xff1f;如何获取进程的PID?信…

REDIS如何开启多个库,而不是增加其实例

(转&#xff1a;)来自运维生存时间: http://www.ttlsa.com/html/4010.html 一台服务器上都快开启200个redis实例了&#xff0c;看着就崩溃了。这么做无非就是想让不同类型的数据属于不同的应用程序而彼此分开。 那么&#xff0c;redis有没有什么方法使不同的应用程序数据彼此分…

IDEA同一个工程启动多个实例

spring cloud 集群中同一个工程需要在多个不同的端口启动多个实例&#xff0c;怎么实现呢 下面我已一个简单的服务提供者、服务消费者、eureka注册中心小Demo说明 &#xff08;之所以一个窗口显示3个项目是因为我先创建了一个空project&#xff0c;之后在空project的基础上ne…