2018/08/10

如何將 elasticsearch 資料設定 TTL



一開始在研究 elasticsearch 時 沒想太多就直接拿來用

隨著時間過去, 資料累積愈來愈多, 開始有了需要將資料 TTL 的功能

於是開始研究有沒有這樣的功能

2018/05/19

在nginx啟動時不需要輸入密碼



我們在產生 https 的憑證 private key 大部分都會輸入密碼再多一層保護

在 nginx 1.7.3 之前 每次重啟 nginx 就會跳出要輸入 pem 密碼

如果是多個 sites 共用一把 key 的話就要輸入 n 次....

幸好在 1.7.3 之後支援了這個 directive

```
ssl_password_file
```

這樣在啟動 nginx 時就不用輸入密碼了

2018/05/15

了解 /etc/group

markdown

```sh
$ cat /etc/group
admin:x:100:admin
--1-- 2 -3- --4--
```

1. 群組名稱
2. 密碼
3. 群組id (gid)
4. 成員清單

2018/01/30

如何使用 << EOF 達到傳遞多行文字



在寫 shell script 時

常常會需要傳遞或是寫入多行文字

這時候 `<<EOF` 就可以派上用場了

用法1:

```sh
$ cat <<EOF > a.txt
'use strict';

const A='1';
console.log(A);
EOF
```

用法2:

# 從檔案讀取
$ sfdisk /dev/xvdb > xvdb-table

# 用 <<EOF 方式

```sh
$ sfdisk /dev/xvdb <<EOF
label: dos
label-id: 0xffffffff
device: /dev/xvdb
unit: sectors

/dev/xvdb1 : start=        2048, size=    209713152, type=83
EOF
```

EOF只是一個標示,可以改成MOA,結果是一樣的

```sh
$ cat <<MOA > a.txt
'use strict';

const A='1';
console.log(A);
MOA
```

另外,有時候寫在 shell 檔案執行時會出錯

可以加上""包起來

例如:

```sh
#!/bin/sh
cat <<"EOF" > a.txt
'use strict';

const A='1';
console.log(A);
EOF
```

在樹莓派(raspbian) 安裝 docker


廢話不多說

一行指令打天下

```sh
$ curl -sSL https://get.docker.com | sh
```

2018/01/29

如何在 ubuntu/macOS/raspbian 下安裝 docker compose



隨著進入了 docker 的世界,碰到愈來愈多東西

終於用上了 docker compose

不過常常在新系統安裝好 docker 後會發現不能使用 docker-compose

原來這個東西是要另外安裝的

依據[官方](https://docs.docker.com/compose/install/#install-compose)的文件

以下範例適合 ubuntu/macOS

```sh
# 下載
$ sudo curl -L https://github.com/docker/compose/releases/download/1.18.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
# 加上執行權限
$ sudo chmod +x /usr/local/bin/docker-compose
```

這樣就可以盡情的使用 docker-compose up 了


如果是在樹莓派 raspbian 下的話就比較麻煩了

這邊提供用pip安裝的方法

```sh
# 安裝 pip
$ sudo apt-get install python-pip
# 或 pip3
$ sudo apt-get install python3-pip

# 利用 pip 安裝 docker-compose
$ sudo pip install docker-compose
# 或 pip3
$ sudo pip3 install docker-compose

# 跑完就可以使用了
$ docker-compose -v
docker-compose version 1.18.0, build 8dd22a9
```

參考:

https://github.com/docker/compose/

https://docs.docker.com/compose/install/

https://www.digitalocean.com/community/tutorials/how-to-install-docker-compose-on-ubuntu-16-04

2017/12/15

正規表示式 Regular Expression ?= Positive Lookahead Assertion


正規表示式(Regular Expression) 是一個用來描述或是比對某個規則的文字

一直以來我都沒有很透徹地去瞭解他每個pattern

都是看到什麼自己不知道的用法才去查