ホーム サーバーで Plex をしばらく使用しており、NAS のアップグレードをいくつか購入したので、docker のセットアップを自動化することにしました。私は Ansible にまったく慣れておらず、Docker に非常に簡単に触れただけです。実際の Plex の展開を除いて、ほとんどのことが機能しているようです。
これが役立つ場合に備えて、become パラメータを調整してみました。最初はすべてのコマンドで使用していましたが、何をしているのかよくわからなかったので、ここに来ました。
私が得ているエラーは次のとおりです。
Error: Unable to set up server: sqlite3_statement_backend::loadOne: database is locked
Starting Plex Media Server.
6 3000 /config/Library/Application Support
8192
NAS ドライブ上のファイル自体を確認したところ、次のプロパティがあります。ここで、Support は ssh ユーザーです。
208 -rwxr-xr-x 1 support root 209920 Apr 30 12:21 com.plexapp.plugins.library.db
そして、私が作成したプレイブックは次のとおりです。
---
# Install Docker
- hosts: mediaservers
remote_user: support
roles:
- { role: angstwad.docker_ubuntu, sudo: yes }
# Mount NAS and create folders
- hosts: mediaservers
remote_user: support
become: no
tasks:
- name: Install required package
apt: pkg={{item}} state=installed update-cache=yes
become: yes
with_items:
- cifs-utils
- name: Upload credentials file
copy: src=env/.smbcredentials dest=/root/ mode=0700
become: yes
- name: Create mount directory
file: state=directory path=/mnt/NAS/universe-01
- name: mount NAS to fstab
mount: fstype=cifs name=/mnt/NAS/universe-01 src=//192.168.1.73/universe-01 opts="credentials=/root/.smbcredentials,uid=1000" state=mounted
become: yes
# Directories to store media files
- name: Creates tvshow directory
file: state=directory path=/mnt/NAS/universe-01/media/tvshows
- name: Creates movies directory
file: state=directory path=/mnt/NAS/universe-01/media/movies
- name: Creates music directory
file: state=directory path=/mnt/NAS/universe-01/media/music
- name: Creates photos directory
file: state=directory path=/mnt/NAS/universe-01/media/photos
# Directories to store docker data/config
- name: Creates plex configuration directory
file: state=directory path=/mnt/NAS/universe-01/data/docker/plex/config
# Deploy docker images
- hosts: mediaservers
remote_user: support
become: no
tasks:
- name: Create Plex docker image
become: yes
docker:
name: plex
hostname: plex
image: linuxserver/plex
pull: missing
state: started
restart_policy: always
ports:
- "32400:32400"
- "32400:32400/udp"
- "32469:32469"
- "32469:32469/udp"
- "5353:5353/udp"
- "1900:1900/udp"
volumes: [
'/mnt/NAS/universe-01/data/docker/plex/config:/config',
'/mnt/NAS/universe-01/media/tvshows:/data/tvshows',
'/mnt/NAS/universe-01/media/movies:/data/movies',
'/mnt/NAS/universe-01/media/music:/data/music',
'/mnt/NAS/universe-01/media/photos:/data/photos'
]
env:
VERSION: latest
PGID: 999
PUID: 1000