以前也写过一篇文章叫做购买 VPS 之后需要做的事情 其中也提到了一些安全设置来确保 VPS 的安全性,但是那篇文章更多的集中于设置和配置。那这篇文章就集中总结归纳一下需要特别注意的安全问题。
保持系统更新
经常检查系统更新,尤其是出现重大安全问题时一定更新到最新的系统,以 Debian/Ubuntu/LinuxMint 为例
apt-get update
apt-get upgrade
SSH 端口和登录
SSH 默认使用 22 端口,我们和 VPS 打交道用的最多的就是这一个端口,修改 /etc/ssh/sshd_config 中 Port
Read more ...
cAdvisor 可以对节点机器上的资源及容器进行实时监控和性能数据采集,包括CPU使用情况、内存使用情况、网络吞吐量及文件系统使用情况,cAdvisor集成在Kubelet中,当kubelet启动时会自动启动cAdvisor,即一个cAdvisor仅对一台Node机器进行监控。kubelet的启动参数 –cadvisor-port 可以定义cAdvisor对外提供服务的端口,默认为4194。
cAdvisor原生支持 Docker 容器,cAdvisor 容器是基于Google的 Imctfy 开发。cAdvisor 运行一个守护进程用来收集每一个
Read more ...
之前一篇文章 介绍了 Java 8 中 stream 基本用法,这里主要说 collect,flatmap,map 这三个比较重要的方法使用。
基础数据结构
class Person {
String name;
int age;
Person(String name, int age) {
this.name = name;
this.age = age;
}
@Override
public String toString() {
return name;
}
}
collect
下面的例子覆盖了 collec
Read more ...
本意上想要了解一下 Docker 容器中 Volume 的备份,毕竟重要的数据都在 Volume 中。然后顺带看了一下 Docker 镜像,容器的备份,不过镜像和容器托管到 Docker Hub 上也算是备份了。
Volume 可以叫做 数据卷,可供一个或者多个容器使用:
数据卷 可以在容器之间共享和重用
对 数据卷 的修改会立马生效
对 数据卷 的更新,不会影响镜像
数据卷 默认会一直存在,即使容器被删除
镜像备份
这里说的备份指的是直接从本地备份镜像文件,可以使用 docker save 命令将镜像打包成 tar 文件,之后
Read more ...
仅仅作为记录,为了不让树莓派吃灰。主要参考官网这篇文章。
Docker 的好用程度已经不比多说,经过这两年的发展已经非常成熟,还记得一年前买的书已经跟不上Docker的发展了,所以这里还是推荐 Docker 的官方文档,要比市面上存在所有书籍要详细。不过要是想要了解 Docker 的内部技术还是有不少好书可以参考。跑偏了,回到正题。
安装
Docker 官方已经支持 Raspbian Jessie,所以可以直接安装:
curl -sSL https://get.docker.com | sh
Docker client 只能被 root 或者
Read more ...
percona-toolkit 源自 Maatkit 和 Aspersa 工具,这两个工具是管理 MySQL 的最有名的工具,但 Maatkit 已经不维护了,全部归并到 percona-toolkit。Percona Toolkit 是一组高级的命令行工具,用来管理 MySQL 和系统任务,主要包括:
验证主节点和复制数据的一致性
有效的对记录行进行归档
找出重复的索引
总结 MySQL 服务器
从日志和 tcpdump 中分析查询
问题发生时收集重要的系统信息
在线修改表结构
这里主要介绍在线修改表结构功能。
在
Read more ...
Java 8 中 stream 大大简化了 Collection 的操作,所以这篇文章就简单的了解下 stream 的基本用法,关于 collect,flatmap,map 等等更加高级的用法可能还需要另开一篇 总结。
Stream API 借助于同样新出现的 Lambda 表达式,极大的提高编程效率和程序可读性。同时它提供串行和并行两种模式进行汇聚操作,并发模式能够充分利用多核处理器的优势,使用 fork/join 并行方式来拆分任务和加速处理过程。
创建 stream
有很多种方法
通过集合的 stream() 方法或者 parallel
Read more ...
很早以前买一台VPS主要的功能就是翻墙,然后常年也仅仅是跑一个 Shadowsocks,后来渐渐的发现其实有一台服务器即使只有单核1G,也能够用来做很多事情。以前我也看过一些文章讲述如何充分利用起VPS,但大部分除了说自建网站,挂机刷 YouTube 赚钱外也都没有什么实质性的内容。而自从开始接触Docker,我渐渐的发现了很多服务,因此我自己搜罗了一些。当然其实 GitHub 上有一个 Awesome Selfhosted 这里面列举了成百上千种可以自己托管部署的服务,几乎可以代替掉日常生活中用到的80%的服务,可以自建 nextcloud 代替 Dr
Read more ...
Docker Volumes 机制通常用来给 Docker 容器保存持久化数据,使用 Volumes 有很多优势:
更容易备份和迁移
使用 Docker CLI 命令或者 Docker API 来管理
可以在 Linux 和 Windows 上使用
可以更安全得在多个容器中共享
Volume drivers 允许容器将内容保存到远端,云服务提供商,或者加密volume内容,或者增加其他功能
新 Volume 的内容可以被容器预先填充, volume 会先将容器内容拷贝到容器外目录
Volumes 通常也优于容器的可写层,使
Read more ...
Gogs 是一个能够自建Git托管服务的开源项目,用 Go 语言实现。因为较之 GitLab 轻量化一些,所以受到一定欢迎。
使用 Docker 来搭建 Gogs 服务时,需要额外依赖 MySQL,网上一般的教程都是先启动一个 MySQL 容器,开放端口,然后在启动 Gogs 容器配置。其实可以使用 docker-compose 一次性启动好。
version: '3.3'
services:
gogsdb:
image: mysql:5.7
container_name: gogsdb
restart: always
Read more ...