免费云主机福利
免费云主机福利,可畅享全球网络、无限流量
获取云主机信息
关注公众号
N学无止界
, 回复云主机
免费云主机
即可获取登录信息
注意事项
参考资料
https://github.com/coder/code-server
docker镜像参考资料https://hub.docker.com/r/linuxserver/code-server
自定义Dockfile
FROM linuxserver/code-server:amd64-4.95.3
LABEL maintainer="[email protected]"
WORKDIR /config
ENV TZ=Asia/Shanghai PUID=0 PGID=0
ENV DEFAULT_WORKSPACE=/projects
# install miniconda
RUN curl -L https://mirrors.sustech.edu.cn/anaconda/miniconda/Miniconda3-py310_24.9.2-0-Linux-x86_64.sh -o Miniconda3.sh
RUN bash Miniconda3.sh -b && rm Miniconda3.sh && echo 'export PATH="/config/miniconda3/bin:$PATH"' >> /etc/profile
Miniconda 和 Conda 的关系
-
Conda 是什么?
- Conda 是一种开源的包管理器和环境管理器,它不仅可以管理 Python 包,还支持其他语言和工具(如 R、C++)。
- 核心功能:
- 包管理:安装、更新和删除软件包。
- 环境管理:创建和管理多个独立的环境,每个环境可以有不同的 Python 版本和包。
-
Miniconda 是什么?
- Miniconda 是 Conda 的轻量级发行版,只包含 Conda 和 Python 解释器。
- 特点:
- 体积小:只安装最基础的工具(Conda、Python 和一些依赖)。
- 灵活性高:用户可以根据需要安装额外的软件包和依赖,而不是加载一大堆可能不需要的库。
- Miniconda 是获取 Conda 的一种方式,专为用户提供一个小而精的起点。
-
Anaconda 与 Miniconda 的对比
- Anaconda 是 Conda 的完整发行版,包含 Conda、Python,以及预安装的大量科学计算和数据分析相关的库(如 NumPy、Pandas、SciPy、Jupyter Notebook 等)。
- Miniconda 只包含 Conda 和 Python,用户需要自己安装额外的库。
特性 Miniconda Anaconda 大小 小(~40 MB) 大(~300 MB) 预装库 仅 Python 和 Conda 包含数百个科学计算相关库 适用场景 灵活、按需安装 开箱即用,快速搭建科学计算环境 扩展性 完全自定义,安装所需库 预装库多,但不一定全都需要 -
使用场景的选择
- Miniconda:
- 适合有经验的用户,希望精简系统并根据需要安装特定工具。
- 适合需要节省磁盘空间,或仅需要 Conda 功能的用户。
- Anaconda:
- 适合新手或需要快速搭建数据科学环境的用户。
- 适合使用科学计算、机器学习等库的开发者。
- Miniconda:
-
总结关系
- Conda 是工具,用来管理包和环境。
- Miniconda 是轻量版 Conda 发行包,包含最基础的 Conda 和 Python。
- Anaconda 是完整版 Conda 发行包,包含 Conda、Python,以及大量预装的软件包。
背景
vscodeweb可以随时随地coder
准备docker环境
请参考本网站搜索如何创建
docker
环境
yml文件
参考资料
https://hub.docker.com/r/codercom/code-server
version: '3'
services:
api:
image: codercom/code-server:4.95.3-ubuntu
restart: always
environment:
DOCKER_USER: root
user: "0:0"
volumes:
- /code-server/root:/root
- /projects:/projects
ports:
- "8080:8080"
背景
为了提高安全性,可以禁止 root 用户通过 SSH 登录。
编辑 SSH 配置文件
编辑配置文件
/etc/ssh/sshd_config
vim /etc/ssh/sshd_config
背景
在PVE系统中通过
USB3
断开连接外置存储的时候经常莫名的断开, 对外表现就是访问存储的目录出现IO错误
, 需要重启系统才能再次识别磁盘。
PS: 即使用UUID
挂载磁盘也存在IO错误
问题
journalctl -r | grep 'USB disconnect'
Nov 15 22:53:04 xxxxx kernel: usb 4-4: USB disconnect, device number 2
Nov 15 20:42:20 xxxxx kernel: usb 4-4: USB disconnect, device number 1
背景
某天发现
zfs status -v
出现
zpool status
pool: data
state: ONLINE
status: One or more devices has experienced an unrecoverable error. An
attempt was made to correct the error. Applications are unaffected.
action: Determine if the device needs to be replaced, and clear the errors
using 'zpool clear' or replace the device with 'zpool replace'.
see: https://openzfs.github.io/openzfs-docs/msg/ZFS-8000-9P
scan: resilvered 10.4M in 00:00:05 with 0 errors on Sat Oct 26 13:40:01 2024
config:
NAME STATE READ WRITE CKSUM
data ONLINE 0 0 0
raidz1-0 ONLINE 0 0 0
sdd1 ONLINE 0 0 0 block size: 512B configured, 4096B native
sdd2 ONLINE 0 0 3 block size: 512B configured, 4096B native
sdb ONLINE 0 0 0
本实践将在 Ubuntu 22.04.3LTS 系统上进行安装测试
docker版本 24.0.6
kubeadm版本v1.28.2
版本
背景
集群中一个主节点因
硬盘故障
造成一个主节点无法恢复,进而影响整个k8s集群。
原搭建资源有限,采用了双主的方式搭建的集群。
集群无法启动的根本原因
双主集群中
etcd
为2个节点,一个主节点挂了,导致etcd
无法进行过半选举,处于不可用状态,进而影响整个集群的运行
linux查看磁盘SMART
hdparm
是用于管理和查看硬盘设置的工具,但它本身并不直接提供硬盘使用总时间的统计。如果你想检查硬盘使用的总时间(比如硬盘启动以来的累计运行时间),通常需要通过 S.M.A.R.T. 功能来查看硬盘的相关信息。
-
启用 S.M.A.R.T. 功能并查看硬盘信息:
使用smartctl
工具,它通常附属于smartmontools
包,可以检查硬盘的健康状况及运行时间。安装
smartmontools
(如果尚未安装):sudo apt-get install smartmontools
-
检查硬盘运行时间:
使用smartctl
来查看硬盘的运行时间。sudo smartctl -a /dev/sdX
其中
/dev/sdX
是你的硬盘设备名称(如/dev/sda
)。输出中寻找类似以下的字段:
9 Power_On_Hours -O--CK 100 100 000 - 12345
Power_On_Hours
字段表示硬盘启动以来累计的运行时间,以小时为单位。 -
查看其他信息: