懷疑某個 container 造成 disk IO busrt,拖累到其他服務:

先透過 來降低 container 優先權觀察一陣子:
services:
app:
blkio_config:
# defalt = 500
weight: 100
軟體開發和生活瑣事
懷疑某個 container 造成 disk IO busrt,拖累到其他服務:

先透過 來降低 container 優先權觀察一陣子:
services:
app:
blkio_config:
# defalt = 500
weight: 100
docker 遇到奇怪的錯誤訊息:
docker-compose up -d Failed to write all bytes for unicodedata.cpython-37m-x86_64-linux-gnu.so fwrite: No space left on device
看到 no space left 基本上先 df 看一下,剛好發現 /tmp 炸了:
df -h .... tmpfs 256M 256M 0 100% /tmp
清乾淨以後就恢復正常了。
理論上 /tmp 給 256 MB 理論上應該算夠大了,被塞爆不太正常,找時間翻一下是不是有服務出錯吧
看到另個作法,是讓 docker 清除不需要的資料來釋放空間:
docker system prune -af docker rmi $(docker images -f dangling=true -q)
遇到某個 docker container 啟動以後,顯示 press "y" to accept and continue,有夠麻煩。
若使用 docker run 時,可以加上 -i (interactive):
echo "y" | docker run -i my_image
如果是在 docker-compose.yml,則需加上幾個設定:
image: my_image tty: true stdin_open: true
container 跑起來以後,透過 docker attach 轉到 container,資料輸入完畢以後連續按下「Ctrl+P Ctrl+Q」來 detach:
docker attach my_container y ^P ^Q
Alpine Linux 主要是透過 apk 來管理套件。
新增套件:
apk update && \
apk add build-base autoconf automake && \
cd /path/to/source && \
make install && \
rm -fr /var/cache/apk/* && \
rm -fr /tmp/*
離開前要記得 rm -fr /var/cache/apk/* 清除暫存檔。
也可以使用 apk add --no-cache 安裝套件,這樣就不需要考慮暫存檔:
apk add --no-cache build-base autoconf automake &&
....
config rewrite from Manticore document :
version: "3"
services:
manti:
image: manticoresearch/manticore:6.2.12
volumes:
- ./data:/var/lib/manticore
ports:
- 127.0.0.1:9306:9306
- 127.0.0.1:9308:9308
environment:
# un-comment to install extra plugin for manticore
#- "EXTRA=1"