2017/05/22

在 ubuntu 中建立 swap


1. 建立 swap 檔

sudo fallocate -l 1G /data/swap
sudo chmod 600 /data/swap
sudo mkswap /data/swap


2. 編輯 /etc/fstab 加入系統啟動自動掛載

/data/swap none swap defaults 0 0


3. 自動掛載 fstab 設定的 swap

sudo swapon -a


4. 查詢 swap

swapon -s
# 或
free

2017/04/19

手動編譯 php *.so 檔


由於在同一環境中有不同版本的 php 同時運作

所以舊版 php 的 shared object 套件無法使用 pecl/pear 安裝

那就自己 build 吧

2016/11/29

2016/09/26

docker nginx reload



根據官方blog

當 nginx 設定檔更動時, 你不能直接執行 nginx reload, 但幸好 nginx 支援特定 signal 去做 reload

/etc/init.d/nginx reload

sudo docker kill -s HUP 



/etc/init.d/nginx restart

sudo docker restart 


2016/08/22

將虛擬機器映像檔 匯入AWS EC2



由於必須必須把映像檔上傳至 S3 上才能建立 EC2 的 AMI

所以我們先在S3上建立一個 bucket


aws s3api create-bucket --bucket vm-image


將映像檔上傳至 S3

aws s3 cp ~/ubuntu.ova s3://vm-image/


建立一個名為 vmimport 的 role


aws iam create-role --role-name vmimport


condition 要改為

"sts:Externalid":"vmimport"


開始匯入囉

aws ec2 import-image --cli-input-json "{ \"Description\": \"Ubuntu\", \"Format\": \"ova\", \"UserBucket\": { \"S3Bucket\": \"vm-image\", \"S3Key\": \"Ubuntu.ova\" } }"


之後就是等等等, 當然可以查進度

aws ec2 describe-import-image-tasks --import-task-ids import-ami-xxxxxxxxxx


完成後就會在你的EC2的AMIs看到image囉


Reference:
http://docs.aws.amazon.com/vm-import/latest/userguide/import-vm-image.html#import-vm
http://docs.aws.amazon.com/vm-import/latest/userguide/vmimport-image-import.html

2016/07/18

docker 解決 container mount檔案



目前在操作 docker 上會遇到一個問題:
mount 某個檔案或某的目錄到 container 上後修改 host 上的擋案後 container 對應的擋案不會跟著變動

docker container 預設加入 host 至 /etc/hosts




從 docker v1.3.1 起
docker支援了 --add-host 的參數可以再啟動時加入私有主機別名設定 (/etc/hosts)
可參考 https://docs.docker.com/v1.8/reference/run/#network-settings

我們只要再docker啟動時加入 --add-host $NAME:$IP
例如:

docker run -itd --restart=always --name lol_backend -p 80:80 -p $22:22 --add-host db:10.10.10.1 lol_backend


有多筆就加多個囉

docker run -itd --restart=always --name lol_backend -p 80:80 -p $22:22 --add-host db:10.10.10.1 --add-host db2:10.10.10.2 lol_backend