• 2018年01月07日
    Devin

    如何修改Synolog Nas上Docker的日誌記錄驅動

    我的Synolog Nas上,預設跑了一個奇怪的logging driver叫db,
    如何修改為正常使用的json-file呢?

    在Synolog的Nas他的Daemon config file較特殊,放在/var/packages/Docker/etc/目錄下,
    叫dockerd.json。

    一、進入編輯
    vi /var/packages/Docker/etc/dockerd.json
    補上"log-driver":"json-file"


    二、進行重啟Docker Daemon
    synoservice --restart pkgctl-Docker

    三、查看預設的Logging driver設定
    docker info|grep Logging


    四、實際測試功能
    docker-comose logs -f

    可以正常看見,有東西了...


    補充: 我常用在synology上的指令
    例如要列出Synology Nas上的所有服務叫名稱。
    synoservice --list
    找Docker,可用大寫查詢
    synoservice --list|grep Docker
    pkgctl-Docker

    如果要重載nginx設定,可以用
    synoservice --reload nginx

    可用help查看相關設定
    synoservice --help

  • 2018年01月07日
    Devin

    關於Docker的Logging Driver

    Docker內建相當多的日誌機制,幫我們取得在container內執行的服務資訊。
    這些機制(mechanisms)我們通常稱為logging drivers.

    如果要變更預設的日誌記錄驅動程序(logging drivers),可在daemon.json文件設置login-driver程序的名稱。這個檔案通常放在linux系統的/etc/docker目錄下,或在Windows則是C:\ProgramData\docker\config\
    Docker預設的logging driver是json-file,把他變更為syslog。


    在MacOS的系統,可以由Docker喜好設定進行設更:
    daemon.json
    重啟後會發覺日誌記錄變到了syslog了。


    關於更多的Docker Deamon組態設定,可以參考官方連結:
    https://docs.docker.com/engine/reference/commandline/dockerd/#daemon-configuration-file

    用指令來查詢預設的Logging Driver.
    docker info |grep Logging

    下方為支援的Loggin drivers列表:
    Driver Description
    none No logs will be available for the container and  docker logs  will not return any output.
    json-file The logs are formatted as JSON. The default logging driver for Docker.
    syslog Writes logging messages to the  syslog  facility. The  syslog daemon must be running on the host machine.
    journald Writes log messages to  journald . The  journald  daemon must be running on the host machine.
    gelf Writes log messages to a Graylog Extended Log Format (GELF) endpoint such as Graylog or Logstash.
    fluentd Writes log messages to  fluentd  (forward input). The  fluentd daemon must be running on the host machine.
    awslogs Writes log messages to Amazon CloudWatch Logs.
    splunk Writes log messages to  splunk  using the HTTP Event Collector.
    etwlogs Writes log messages as Event Tracing for Windows (ETW) events. Only available on Windows platforms.
    gcplogs Writes log messages to Google Cloud Platform (GCP) Logging.
    logentries Writes log messages to Rapid7 Logentries.

    我可以在用docker run指令創建container時,
    或是docker-compose啟動時,指定要使用的logging driver.
    舉例,我的Synolog Nas上的dokcer,莫明跑了一個奇怪的logging driver叫db。(下圖)


    我想讓我的docker-compose啟動時,執行json-file。
    就可以補上
    loggin:
      driver: json-file

     

  • 2018年01月02日
    Devin

    參除git遠端或本地端的tag

    遠端:
    git push --delete origin v1.0

    本地端:
    git tag --delete v1.0

    多個遠端的tags
    git push --delete origin tag1 tag2

    多個本地端的tags
    git tag -d tag1 tag2