h2O
h2O
Docker FAQ =========== 1. Dockerfile 中 `COPY` 指令和 `ADD` 指令有什么区别 简单来说,最主要的区别是 `ADD` 功能更为强大一些: - `ADD` 允许 `` 是一个 URL - 如果 `ADD` 的 `` 参数是可以识别的压缩格式存档文件,则对其进行解压 > 如果 ADD 带一个 URL...
apt-get update 和 apt-get install 写在同一个 RUN 指令的解读 =========================================================== ### 场景 看到很多 `Dockerfile` 都是把 `apt-get update` 和 `apt-get install` 写在同一个 `RUN` 指令中的 ``` RUN apt-get update && apt-get install -y...
更新 keyring ============= ### 场景 `Arch` 许久不更新,安装软件报 `error`. ```bash $ sudo pacman -Sy docker # -y 参数是许久没更新系统,从服务器下载最新的包数据库到本地 ... ... error: containerd: signature from "Eli Schwartz " is unknown trust ::...
jenkins 安装 ============= #### 安装 ##### 下载 `jenkins` ``` $ mkdir /usr/local/jenkins $ cd /usr/local/jenkins $ wget -c http://mirrors.jenkins.io/war-stable/latest/jenkins.war ``` 下载地址: [jenkins](https://jenkins.io/doc/pipeline/tour/getting-started/) ##### 配置环境变量 设置 `jenkins` 的主目录 ``` ## root...
Jenkins PHP 部署示例 ===================== ### 搭建 Jenkins 在本地搭建 `Jenkins`. > 参考 [jenkins 安装](https://github.com/codcodog/Blog/issues/106) ### 配置 SSH 配置 `ssh`, 程序在 `Jenkins` 服务器打包完之后,发布到目标服务器上. `Manage Jenkins` -> `Configure System` -> `Publish over SSH`...
ln 覆盖普通文件或目录 ===================== ### 场景 `ln` 覆盖已存在的普通文件或目录. ### 创建软链接 创建一个普通文件的软链接 ``` $ ln -s ~/.bashrc /tmp/test $ ll /tmp/ | grep test lrwxrwxrwx 1 cryven users 20 Jan 27 18:43...
cron 秒级控制 ============= ### 场景 使用 `crontab` 每隔5秒执行一个脚本 ### 纠正 `crontab` 最小调度单位是「分钟」,没法控制到「秒」. ``` */5 * * * * /path/to/script ``` 这里的 `/` 是指「步长」,意思是每隔5分钟执行一次脚本. `crontab` 详细用法参考:[Crontab 用法](https://github.com/codcodog/Blog/issues/92) ### 方案 #### 方案一...
LNMP 环境搭建和配置 =================== Nginx 安装 ----------- #### 下载源码 在 [Nginx](http://nginx.org/en/download.html) 官网,下载好源码包. ``` $ wget -c wget -c http://nginx.org/download/nginx-1.12.2.tar.gz $ tar xvzf nginx-1.12.2.tar.gz ``` #### 安装依赖 在编译安装开始前, 先把依赖包安装上. > ssl 功能需要...
system boot 安装 ================ ### system-boot > 主要针对 `gpt` 分区,固态硬盘. 安装 `bootloader` ```bash # bootctl --path=/boot install ``` 配置 `loader.conf` ```bash # vim /boot/loader/loader.conf ``` ``` default arch timeout 3...
问题集锦 ======== 1. makefile 中 .PYONY 的目的是什么 默认情况下,`Makefile` 目标是「文件目标」- 它们用于从其他文件构建文件. 假设它的目标是一个文件,这使得编写 `Makefile` 相对容易. ``` foo: bar create_one_from_the_other foo bar ``` 但是,有时你希望 `Makefile` 运行一些命令而不是构建一个在文件系统中的实际文件. 例如常用的目标文件:`clean`, `all`. 但有时情况并非如此,你可能在主目录中有一个名为 `clean` 的文件,这时候 `Make` 会被混淆,因为默认情况下,`clean`...