瞎折腾 Docker 搭建 dpanel 容器管理面板
之前介绍过新手上路之Docker 搭建好用的 web 管理工具 Portainer – 最新中文汉化版,dpanel 也是同样的一款可以在 web 页面管理 docker 的工具,并且是国人开发的。 docker-compose 文件如下: services: dpanel: image: dpanel/dpanel:lite container_name: dpanel restart: alw…
经验教程 Docker 通过镜像查看 dockerfile
偶尔可能想要查看某个镜像的 dockerfile,但是 github 没可能没有对应的仓库,所以只能通过能拿到的镜像反推 dockerfile。 使用 whaler 可以做到这一点,使用方式如下: docker run -t –rm -v /var/run/docker.sock:/var/run/docker.sock:ro pegleg/whaler <<具体镜像>>…
程序开发 什么是 AbstractQueuedSynchronizer
AbstractQueuedSynchronizer 今天在b站看了关于 AbstractQueuedSynchronizer 的合集,稍微了解了一下 AbstractQueuedSynchronizer 的工作原理,简单记录一下。 AbstractQueuedSynchronizer (AQS) 是 Java 中 java.util.concurrent 包的一部分,是一个基础框架类,用于实现锁…
程序开发 Java 的 volatile 关键字
volatile介绍 首先要知道的是并发编程的三个特性:可见性、有序性和原子性,其中 volatile 只能保证其中的可见性和有序性,并不能保证原子性。 可见性 可见性指一个线程对共享变量的修改能够被其他线程立即看到的特性。 多线程条件下,线程0和线程1同时读取了 flag 变量,但线程1将 flag 变量修改后,不会立即刷回主存(常说的内存),而是保存在自己的缓存中(CPU 缓存)。那么此时线程…
经验教程 Swagger 与 OpenAPI
一、区别与联系 OpenAPI 3.x 规范是从 Swagger 2.x 分支出来的,主要是由 Linux 基金会的 OpenAPI Initiative 进行维护的。Swagger 2.x 规范被 OpenAPI 3.x 取代,OpenAPI 3.0 成为新的 API 规范标准。但Swagger 2.x 规范仍然被广泛使用,例如常见的 @Api、@ApiOperation 等注解都是 Swa…
经验教程 还原 docker 容器的运行命令
喜欢 docker run 运行命令的朋友经常会遇到的一件事是,忘记之前环境变量设置的什么密码了。如果这个这个容器是很久之前创建的,并且 linux 历史命令也找不到可能就有点束手无策了。 而 runlike 容器能帮助还原之前运行的 docker run 命令,使用方式如下: docker run –rm -v /var/run/docker.sock:/var/run/docker.sock…
瞎折腾 Docker 搭建 ZeroNews 内网穿透
Nas 玩家最烦的就是不能在外面远程家里的机器,如果有云服务器还可以自己搭建内网穿透或者是异地组网,但是没有服务器只能用别人提供的免费服务。 今天偶然间在其他地方看见 ZeroNews,发现上手比较简单,并且可以使用 docker 搭建,然后就折腾了一下。虽然我自己不是很需要这款工具,因为本身服务器就挺多的。 首先需要登录 zeronews,然后创建 token。 再创建 docker-compo…
程序开发 Go 语言多模块工作区
在 Go 1.18 引入的多模块工作区(Workspace)功能使我们可以在一个工作区中同时使用多个模块,这对开发大型项目或需要同时处理多个模块依赖的项目非常有帮助。 下面是一个简单使用多模块工作区的案例: 创建主目录 首先创建主目录: mkdir myworkspace cd myworkspace 创建第一个模块 在 myworkspace 文件夹下运行命令: mkdir mod1 cd mo…
其他分享 Syncthing 同步文件问题记录
syncing: opening temp file: open xxx: permission denied 这种是经典的权限问题。可以将需要文件夹的权限修改为容器内用户可操作的权限。 或者以 root 用户运行容器: services: syncthing: image: syncthing/syncthing:latest container_name: syncthing ports: -…
经验教程 Vscode 编写 vue 常见问题及解决方法
【TypeScript】JSX 元素隐式具有类型 “any“,因为不存在接口 “JSX.IntrinsicElements“。ts(7026) { "compilerOptions": { "jsx": "preserve", "jsxImportSource": "vue", // … } }…
程序开发 Vue3 项目初始化
1. 初始化项目 vue3 推荐使用 vite 进行项目构建,vite 官方中文文档参考:cn.vitejs.dev/guide/ 另外包管理工具推荐 pnmp,其号称高性能的 npm。pnmp 由 npm/yarn 衍生而来,解决了 npm/yarn 内部潜在的 bug,极大的优化了性能,扩展了使用场景。 pnpm 安装: npm i -g pnpm 项目初始化: pnpm create vit…

源码学习 Spring 容器初始化流程

WordPress 主题美化 – 文章下面的图标更换为彩色图标

推荐 Java 开发常用工具类-hutool

Linux 磁盘加密和自动挂载

Nexttrace 可视化网络路由工具

