0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Raspberry PiにDocker+Sambaでファイルサーバー構築

Posted at

概要

Raspberry Pi上にSambaのDockerイメージを使用してファイルサーバーを構築した際のメモです。

環境

  • 本体:Raspberry Pi 4 Model B
  • OS:Debian 11.11

構築

ドライブのマウント設定

今回は外付けHDDをしようしたので、以下を参考に自動マウント設定を行いました。

Dockerコンテナの作成

docker-compose.ymlを作成します。Dockerイメージにはdperson/sambaを使用しました。

version: '3.4'

services:
  samba:
    image: dperson/samba
    container_name: samba
    environment:
      - TZ=Asia/Tokyo
      - USERID=1000
      - GROUPID=1000
    networks:
      - default
    ports:
      - "139:139/tcp"
      - "445:445/tcp"
    read_only: true
    tmpfs:
      - /tmp
    restart: always
    stdin_open: true
    tty: true
    volumes:
      - /mnt/nas:/nas:z
    command: '-s "nas;/nas;yes;no;no;USERNAME" -u "USERNAME;PASSWORD" -p'

networks:
  default:

主な設定項目の解説

volumesにてホスト側のドライブ(/mnt/nas)をコンテナ内にマウントします。

volumes:
  - /mnt/nas:/nas:z

commandにてユーザや権限の設定を行います。
下記の場合、-sオプションではセミコロン区切りで左から順にサーバ名(任意)、ストレージとして使用する領域のファイルパス、読み書きの可否、読み取り専用、ゲストアクセスの可否、アクセスを許可するユーザ名を設定しています。その他の設定はGitHubのREADMEに記載があります。

-uオプションで使用するユーザ名とパスワードを設定します。

-pオプションは権限の設定上必要になるようです。

command: '-s "nas;/nas;yes;no;no;USERNAME" -u "USERNAME;PASSWORD" -p'

起動と接続

docker compose upで起動後、以下の手順で接続を行います。

Windows11の場合

  1. エクスプローラーの「ネットワークドライブの割り当て」を選択

    スクリーンショット (25).PNG

  2. ドライブ文字と\\Raspberry PiのIPアドレス\サーバ名の形式でサーバを指定し「完了」を押す

    スクリーンショット 2025-04-08 203930.png

  3. うまく行けばファイルサーバ上のデータが閲覧できる

課題

今回使用したDockerイメージは更新が止まっているようなので、servercontainers/sambaのような別のイメージに移行するか、自作のイメージを用いるのが良さそうです。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?