Raspberry Pi (Raspbian stretch) 上で稼働する Docker で で Mosquitto が直ぐ Exited してしまう。

何度もトライ&エラーをしながら探ってきましたが何をすればいいか思いつきません。
なぜ Docker run で Exited となるのかがわかりません。
原因を探るための方法や場所、ファイルなど、何かのヒントでもよろしいのでご指摘いただけませんでしょうか。
よろしくお願いいたします。

【実現したいこと】
Raspberry Pi 上の Docker で Mosquitto Brokerを TLS で稼働させたい。

【今まで実行したこと】
Docker インストール
Raspberry Pi 3 B+ に 2018-11-13-raspbian-stretch-lite をインストール。
Docker を公式を参考にインストール。
Docker で Hallo World 実行確認済。

Docker HUB の eclipse-mosquitto で実験
Docker HUB にあった
eclipse-mosquitto を手順通り進めると
System error: exec format error が出た。

GitHub の Mosibi/mosquitto で実験
TLS を行いたかったので GitHub にあった Mosibi/mosquitto を手順通りに進めると
System error: exec format error が出た。

ここで FROM で指定する OS を Raspbian にしないといけないことに気付く。

Docker HUB の schachr/raspbian-stretch で実験
docker pull schachr/raspbian-stretch して
手順通り進めると無事コンテナの中のbashが起動する。
その後 Hallo World の DockerFile を他から引用して実行すると無事表示。

Mosibi/mosquitto の FROM を変更して実験

FROM schachr/raspbian-stretch:latest

と変更して docker run 実行

docker run -d --net=host \
    -e "FQDN=mqtt.example.com" \
    -e "EMAIL=me@example.com" \
    -e "DOMAIN=example.com" \
    -e "IPLIST=172.16.16.16 192.168.1.254" \
    -e "HOSTLIST=somehost.example.com docker.example.com" \
    -v /home/admin/mosquitto/conf.d:/etc/mosquitto/conf.d:z \
    -t mosibi/mosquitto

すると

System error: exec format error

ここからエラー探しやDockerFileの変更などをトライ&エラーで実行して現在に至る(長かった orz けど朧気ながら Docker の雰囲気がわかりました)
ここからが本題です。

【改変 DockerFile で実行したこと】
DockerFile

FROM schachr/raspbian-stretch:latest

MAINTAINER admin <admind@example.com>

ENV LC_ALL="C" \
    LANG="en_US.UTF-8" \
    TZ="Asia/Tokyo"


WORKDIR /tmp

# Configure no init scripts to run on package updates.
ADD files/policy-rc.d /usr/sbin/policy-rc.d
RUN chmod 755 /usr/sbin/policy-rc.d                     && \
: dash を bash に変更                                   && \
    ln -f /bin/bash /bin/sh                             && \
    apt update                                          && \
    apt install -y  rename openssl                         \
                    mosquitto mosquitto-clients         && \
: mosquitto フォルダを空にする                            && \
    rm -rf /etc/mosquitto                               && \
    mkdir /etc/mosquitto

# COPY files
COPY volume /etc/mosquitto/
COPY files/generate-CA.sh /usr/local/bin/generate-CA.sh
COPY files/init /init
RUN chmod 755 /usr/local/bin/generate-CA.sh     && \
    chmod 755 /init

# generate-CA.sh 実行時のディレクトリ
WORKDIR /etc/mosquitto/.ca

# MQTT ports
#EXPOSE 1883
EXPOSE 8883
EXPOSE 9001

CMD [ "/init" ]

Raspberry Pi の tree

$HOME/SmartHome/
├─ README.md
└─ docker
   └── mosquitto
       ├── Dockerfile
       ├── files
       │   ├── generate-CA.sh
       │   ├── init
       │   └── policy-rc.d
       └── volume
           ├── ca_certificates
           │   └── mqtt_ca.crt
           ├── certs
           │   ├── mqtt_srv.crt
           │   └── mqtt_srv.key
           ├── conf.d
           │   ├── mosquitto.conf
           │   └── websockets.conf
           ├── mosquitto.conf
           ├── mosquitto.conf.example
           └── password.txt

実行手順
Docker run したが直ぐに Exited となる。

$ cd SmartHome/docker/mosquitto
$ docker build -t admin/mosquitto .
$ docker run -it -d --name mosquitto --net=host \
    -e "FQDN=pi.example.us" \
    -e "EMAIL=me@example.com" \
    -e "DOMAIN=example.com" \
    -e "IPLIST=192.168.0.220 172.20.10.220" \
    -e "HOSTLIST=pi pi.local pi.example.us 192.168.0.220 172.20.10.220" \
    -v /home/admin/SmartHome/docker/mosquitto/volume:/etc/mosquitto \
    -t admin/mosquitto
$ docker ps -a
・・・ Exited (1) 10 seconds ago

Docker logs を見ると /init コマンドは実行されていることが分かった。

$ docker logs mosquitto
/etc/mosquitto/.ca
Generating a RSA private key
...............+++++
................................................+++++
writing new private key to './ca.key'
-----
Created CA certificate in ./ca.crt
subject=
    commonName                = MQTT Broker example.com
    organizationName          = example.com
    emailAddress              = me@example.com
Warning: the CA key is not encrypted; store it safely!
--- Creating server key and signing request
Generating RSA private key, 2048 bit long modulus
..+++++
.....................................................................+++++
e is 65537 (0x010001)
--- Creating and signing server certificate
Signature ok
subject=CN = pi.example.us, O = example.com, emailAddress = me@example.com
Getting CA Private Key
total 28
-rw-r--r-- 1 1000 1000   21 Jan 28 16:00 .gitkeep
-r--r--r-- 1 root root 1281 Jan 28 16:07 mqtt_ca.crt
-r-------- 1 root root 1704 Jan 28 16:07 mqtt_ca.key
-rw-r--r-- 1 root root   17 Jan 28 16:07 mqtt_ca.srl
-r--r--r-- 1 root root 1891 Jan 28 16:07 mqtt_srv.crt
-rw-r--r-- 1 root root  968 Jan 28 16:07 mqtt_srv.csr
-r-------- 1 root root 1679 Jan 28 16:07 mqtt_srv.key
/etc/mosquitto/
total 60
drwxr-xr-x 2 1000 1000  4096 Jan 28 16:07 .ca
drwxr-xr-x 2 1000 1000  4096 Jan 28 16:07 ca_certificates
drwxr-xr-x 2 1000 1000  4096 Jan 28 16:07 certs
drwxr-xr-x 2 1000 1000  4096 Jan 28 16:00 conf.d
-rw-r--r-- 1 1000 1000   750 Jan 28 16:00 mosquitto.conf
-rw-r--r-- 1 1000 1000 33112 Jan 28 16:00 mosquitto.conf.example
-rw-r--r-- 1 1000 1000   115 Jan 28 16:00 password.txt
/etc/mosquitto/ca_certificates/
total 8
-rw-r--r-- 1 1000 1000   21 Jan 28 16:00 .gitkeep
-r--r--r-- 1 root root 1281 Jan 28 16:07 mqtt_ca.crt
/etc/mosquitto/certs/
total 12
-rw-r--r-- 1 1000 1000   21 Jan 28 16:00 .gitkeep
-r--r--r-- 1 root root 1891 Jan 28 16:07 mqtt_srv.crt
-r-------- 1 root root 1679 Jan 28 16:07 mqtt_srv.key
/etc/mosquitto/password.txt
admin:$6$uXNbKcSuDpNZYcmHivYC1fg3neSmmsdLxlI5A==

マウントしたボリュームを見るとCA証明書類が作成されている。

$ ls -A SmartHome/docker/mosquitto/volume/.ca
.gitkeep     mqtt_ca.key  mqtt_srv.crt  mqtt_srv.key
mqtt_ca.crt  mqtt_ca.srl  mqtt_srv.csr

コンテナをコミットして中に入る準備をする。

$ docker commit mosquitto debug
$ docker run --rm -it debug /bin/bash

ここから debug イメージの中
debug イメージの中を確認するとCA証明書類はない(マウントのコマンドをしてないから多分)

$ pwd
/etc/mosquitto/.ca
$ ls -A
.gitkeep

ここで /init コマンドを実行してみる。

$ /init
WARNING: Your kernel does not support memory swappiness capabilities, memory swappiness discarded.
root@aba7a43aaeab:/etc/mosquitto/.ca# /init
/etc/mosquitto/.ca
Generating a RSA private key
..............................................................................+++++
.................................................................................................................+++++
writing new private key to './ca.key'
-----
Created CA certificate in ./ca.crt
subject=
    commonName                = MQTT Broker example.com
    organizationName          = example.com
    emailAddress              = me@example.com
Warning: the CA key is not encrypted; store it safely!
--- Creating server key and signing request
Generating RSA private key, 2048 bit long modulus
.................+++++
......+++++
e is 65537 (0x010001)
--- Creating and signing server certificate
Signature ok
subject=CN = pi.example.us, O = example.com, emailAddress = me@example.com
Getting CA Private Key
total 28
-rw-r--r-- 9 root root   21 Jan 28 16:00 .gitkeep
-r--r--r-- 1 root root 1281 Jan 28 16:40 mqtt_ca.crt
-r-------- 1 root root 1708 Jan 28 16:40 mqtt_ca.key
-rw-r--r-- 1 root root   17 Jan 28 16:40 mqtt_ca.srl
-r--r--r-- 1 root root 1883 Jan 28 16:40 mqtt_srv.crt
-rw-r--r-- 1 root root  968 Jan 28 16:40 mqtt_srv.csr
-r-------- 1 root root 1675 Jan 28 16:40 mqtt_srv.key
/etc/mosquitto/
total 60
drwxr-xr-x 1 root root  4096 Jan 28 16:40 .ca
drwxr-xr-x 1 root root  4096 Jan 28 16:40 ca_certificates
drwxr-xr-x 1 root root  4096 Jan 28 16:40 certs
drwxr-xr-x 2 root root  4096 Jan 28 16:10 conf.d
-rw-r--r-- 9 root root   750 Jan 28 16:00 mosquitto.conf
-rw-r--r-- 9 root root 33112 Jan 28 16:00 mosquitto.conf.example
-rw-r--r-- 9 root root   115 Jan 28 16:00 password.txt
/etc/mosquitto/ca_certificates/
total 8
-rw-r--r-- 9 root root   21 Jan 28 16:00 .gitkeep
-r--r--r-- 1 root root 1281 Jan 28 16:40 mqtt_ca.crt
/etc/mosquitto/certs/
total 12
-rw-r--r-- 9 root root   21 Jan 28 16:00 .gitkeep
-r--r--r-- 1 root root 1883 Jan 28 16:40 mqtt_srv.crt
-r-------- 1 root root 1675 Jan 28 16:40 mqtt_srv.key
/etc/mosquitto/password.txt
admin:$6$uXNKcSuDpNZYWO9I$6FmqWeO==
▮

プロンプトが点滅している状態がずっと続いてる。Ctr-P,Ctr-Qで戻れない。

ここで違う端末のSSHで同じアカウントにログインして確認する。

$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                NAMES
aba7a43aaeab        debug               "/bin/bash"         13 minutes ago      Up 13 minutes       8883/tcp, 9001/tcp   tender_poincare

Exited にならずに Up になっている。

以上が実行したことです。

なぜ最初の Docker run で Exited となるのかがわかりません。
何かのヒントでもよろしいのでご指摘いただけませんでしょうか。
よろしくお願いいたします。

【環境】
Raspberry Pi 3 B+
2018-11-13-Raspbian-Stretch-Lite
Doccker version
Client:
Version: 1.8.3
API version: 1.20
Go version: go1.4.3
Git commit: f4bf5c7
Built:
OS/Arch: linux/arm
Server:
Version: 1.8.3
API version: 1.20
Go version: go1.4.3
Git commit: f4bf5c7
Built:
OS/Arch: linux/arm
技量:初心者

/etc/mosquitto/mosquitto.conf はオリジナルのままです。

$ cat /etc/mosquitto/conf.d/mosquitto.conf
# 1883 はlocalhost 以外からは受け付けない
listener 1883 localhost
# TSL/SSL ポート
listener 8883

# 認証にパスワードファイルが必要になる
#allow_anonymous false

# パスワードファイル
password_file /etc/mosquitto/password.txt

# CA証明書
cafile /etc/mosquitto/ca_certificates/mqtt_ca.crt

# サーバー証明書
certfile /etc/mosquitto/certs/mqtt_srv.crt

# サーバーキー
keyfile /etc/mosquitto/certs/mqtt_srv.key


$ cat /etc/mosquitto/conf.d/websockets.conf
listener 9001
protocol websockets

/init です

#!/bin/bash

if  [[ "new" = "$1" ]] ||
    [[ ! -f /etc/mosquitto/ca_certificates/mqtt_ca.crt ]] ||
    [[ ! -f /etc/mosquitto/certs/mqtt_srv.key ]] ||
    [[ ! -f /etc/mosquitto/certs/mqtt_srv.crt ]]; then

    cd /etc/mosquitto/.ca
    pwd
    rm -rf *
    # CA証明書生成
    /usr/local/bin/generate-CA.sh ${FQDN}
    # ca.xxx ファイルをリネーム
    /usr/bin/rename s/ca./mqtt_ca./ *
    # pi.example.us.xxx ファイルをリネーム
    /usr/bin/rename s/${FQDN}/mqtt_srv/ *
    ls -Al
    # mosquitto に配置
    cp -rf mqtt_ca.crt /etc/mosquitto/ca_certificates/
    cp -rf mqtt_srv.crt /etc/mosquitto/certs/
    cp -rf mqtt_srv.key /etc/mosquitto/certs/
    echo /etc/mosquitto/
    ls -Al /etc/mosquitto/
    echo /etc/mosquitto/ca_certificates/
    ls -Al /etc/mosquitto/ca_certificates/
    echo /etc/mosquitto/certs/
    ls -Al /etc/mosquitto/certs/
    echo /etc/mosquitto/password.txt
    cat /etc/mosquitto/password.txt
fi

/usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf