第100篇,我的10年3000粉心得
CSDN2022
2021年的年度报告出来,才发现自己也是个在CSDN有4千多天的“老用户”了:
2021年10月回归后,开始耐心经营自己的博客,至今也4000粉丝了。写了一些散碎的文章,也开始了一个新的系列。
已经发了99篇,这应该是第100篇原创了,聊聊这几年的写作心得。
说起写文章,得感谢我的第一家实习单位,当时我们几个实习生一起做过小系统,从0开始。第一件事就是写自己负责部分的需求规格说明书,对格式要求的非常严格。从文章的层次结构、字体、排版,到目录、页眉页脚等,都要求的非常高。也是在那时学习了Visio,到现在依然喜欢用这它来画流程图,当时有件事记得非常深刻,那就是流程图的检查,会将图放大,然后看线条是否存在打弯的情况。现在想想当时的经历,收获还是非常大的。
现在写文章,除非是写一个简单的问题解决记录,否则都会很细致的调文章的格式、配图等。一个好的版面是读者能看下去的第一步。
关于文章内容,一般分为两种,一张是单独的文章,一种则是多篇形成一个系列的文。个人还是喜欢按系列来写,写文章也是对自己的知识、思路的梳理,系列文章形成一整套知识的集合,也方便自己后期查阅。
2021年,开了两个系列:
本着知其然也要知其所以然的习惯,开始阅读Tomcat的源码,版本选择了当前最新的Tomcat10,随着源码的分析,同时顺便解析其中的设计思路,学习其中的设计模式。
至今已完成了5篇文章,后面会继续。
本系列将对比Java和C#两种语言的不同,例如类、集合、泛型等,以对比的方式进行深入学习。
【.Net vs Java? 】 先来看一下Java和C#的数据类型区别。
【.Net vs Java? 】 看一看二者的类有多像?
2022年,在上面提到的两个系列之外,还准备再写个Linux系列,当然不是非常专业的深挖Linux,而是专注后端程序员涉及到的一些常见操作。初步列了几篇文章的计划如下。标题及摘要:
本打算以CentOS为例的,结果CentOS已经停止维护了,决定以Rocky Linux为例。
2020 年 12 月 8 日,Red Hat 宣布他们将停止开发 CentOS,这是 Red Hat Enterprise Linux 的生产就绪下游版本,转而支持该操作系统的更新的上游开发变体,称为“CentOS Stream” . 作为回应,CentOS 的原创始人 Gregory Kurtzer 在 CentOS 网站上发表评论宣布,他将再次启动一个项目以实现 CentOS 的最初目标。 它的名字被选为对早期 CentOS 联合创始人 Rocky McGaugh 的致敬。 到 12 月 12 日,Rocky Linux 的代码仓库已经成为 GitHub 上的热门仓库。
官网下载地址如下:
https://rockylinux.org/download
常用的linux命令一般可以分为很多种,比如查看硬件信息相关命令就有8个,分别是ifconfig、free、fdisk、ethtool、mii-tool、dmidecode、dmesg、lspci,用于内存的命令是top、free、vmstat、mpstat、iostat、sar等。
显示所有包括不活动连接
nmcli con show
显示所有活动连接
nmcli con show --active
显示网络连接配置
nmcli con show 网卡名
显示设备状态
nmcli dev status
显示网络接口属性:
nmcli dev show eth0
创建新连接default,IP自动通过dhcp获取:
nmcli con add con-name default type Ethernet ifname eth0
删除连接:
nmcli con del default
创建新连接static ,指定静态IP,不自动连接:
nmcti con add con-name static ifname eth0 autoconnect no type Ethernet ipv4.addresses 172.25.X.10/24 ipv4.gateway 172.25.X.254
安装Docker-Compose
1.进入https://github.com/docker/compose/releases 查看最新版本,当前版本为1.23.1
curl -L https://github.com/docker/compose/releases/download/1.29.2/docker-compose-Linux-x86_64 -o /usr/local/bin/docker-compose
2.设置权限
sudo chmod +x /usr/local/bin/docker-compose
3.查看是否安装成功
docker-compose --version
最后再该目录下启动 docker:
sudo docker-compose up
查看所有 docker ps -a
很多程序员在内网搭建 gitlab 都搭建的坑坑洼洼,不支持 https,或者装个 gitlab 就把服务器弄得乱七八糟的,根本不知道该怎么维护和迁移。还有程序员再用最原始的,远程机器上:
git --bare init
然后其他人按照 ssh 的协议来克隆的刀耕火种的方法,还有项目用 php 写 fastcgi 来提供 git 服务。真的有那么麻烦么?正确使用 Docker 搭建 Gitlab 明明就是半分钟的事情。
先建个目录:
sudo mkdir -p /home/data/gitlab/config
新建并编辑文件:/home/data/gitlab/docker-compose.yml
gitlab:
image: gitlab/gitlab-ce:14.0.7-ce.0
restart: always
hostname: '192.168.1.11'
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'https://192.168.1.11:8443'
nginx['redirect_http_to_https'] = true
letsencrypt['enable'] = false
nginx['ssl_certificate'] = "/etc/gitlab/nginx.pem"
nginx['ssl_certificate_key'] = "/etc/gitlab/nginx.key"
# Add any other gitlab.rb configuration here, each on its own line
ports:
- 8443:8443
volumes:
- ./data:/var/opt/gitlab
- ./logs:/var/log/gitlab
- ./config:/etc/gitlab
然后在该文件目录下,新建自签名的证书:
sudo openssl req -new -x509 -days 36500 -nodes -out config/nginx.pem \
-keyout config/nginx.key -subj "/C=US/CN=gitlab/O=gitlab.com"
安装Docker-Compose
建议使用的Docker映像是jenkinsci/blueocean
image(来自 the Docker Hub repository)。 该镜像包含当前的长期支持 (LTS) 的Jenkins版本 (可以投入使用) ,捆绑了所有Blue Ocean插件和功能。这意味着你不需要单独安装Blue Ocean插件。
打开一个终端窗口。
下载 jenkinsci/blueocean
镜像并使用以下docker run 命令将其作为Docker中的容器运行 :
docker run \
-u root \
--rm \
-d \
-p 8080:8080 \
-p 50000:50000 \
-v jenkins-data:/var/jenkins_home \
-v /var/run/docker.sock:/var/run/docker.sock \
jenkinsci/blueocean
Linux系统中自动部署
Linux系统中配置Nginx
Linux…
以上就是对2021年的总结以及对2022年的展望了。定个小目标,走起!