Pesquisa de site

Como executar o Emby Media Server no Docker Container


Emby é um aplicativo de mídia/teatro excepcional que permite reunir todos os seus filmes, vídeos, músicas, audiolivros, jogos e fotos em um só lugar. Com o Emby é muito simples configurar um servidor de mídia pessoal em casa, capaz de converter e transmitir automaticamente sua mídia on-the-fl, que pode ser reproduzida em qualquer dispositivo. Emby vem com restrições decentes de controle parental adequadas para uso doméstico com acesso de crianças, você pode criar usuários, criar horários de acesso, limites de tempo e muito mais.

Neste tutorial iremos realizar a instalação, explorar as configurações necessárias e o uso geral do Emby Media Server rodando dentro de um container. A vantagem de executar o Emby em um contêiner Docker é que não há dependência de um sistema operacional Linux específico, é apenas Docker Engine e boom! O Emby Server foi desenvolvido com base em tecnologias populares de código aberto, como jQuery, Service Stack, jQuery mobile e .NET Core.

Instale o Docker Engine

Confira nosso artigo que aborda a instalação do Docker Engine em sistemas Linux.

  • Como instalar o Docker Engine em sistemas Linux

A versão instalada do Docker pode ser verificada através da linha de comando.

$ docker version
Client: Docker Engine - Community
 Version:           25.0.3
 API version:       1.44
 Go version:        go1.21.6
 Git commit:        4debf41
 Built:             Tue Feb  6 21:13:09 2024
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          25.0.3
  API version:      1.44 (minimum version 1.24)
  Go version:       go1.21.6
  Git commit:       f417435
  Built:            Tue Feb  6 21:13:09 2024
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.28
  GitCommit:        ae07eda36dd25f8a1b98dfbf587313b99c0190bb
 runc:
  Version:          1.1.12
  GitCommit:        v1.1.12-0-g51d5e94
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

Criar arquivo Docker Compose

O Compose é usado para simplificar o controle de contêineres em execução na sua máquina host. Simplifica o gerenciamento de redes, serviços e volumes em um único arquivo de configuração YAML. Com um único comando docker compose ou docker-compose, você cria, inicia, interrompe ou exclui todos os serviços definidos no arquivo de configuração YAML.

Vamos criar um arquivo de configuração para executar o Emby Media Server.

mkdir ~/emby && cd ~/emby
vim docker-compose.yml

Modifique o conteúdo abaixo e cole no arquivo.

services:
  emby:
    image: emby/embyserver
    container_name: embyserver
    network_mode: host # Enable DLNA and Wake-on-Lan
    environment:
      - UID=1000 # The UID to run emby as (default: 2)
      - GID=100 # The GID to run emby as (default 2)
      - GIDLIST=100 # A comma-separated list of additional GIDs to run emby as (default: 2)
    volumes:
      - ./data:/config # Configuration directory
      - /path/to/tvshows:/mnt/share1 # Media directory
      - /path/to/movies:/mnt/share2 # Media directory
    ports:
      - 8096:8096 # HTTP port
      - 8920:8920 # HTTPS port
    restart: on-failure

Onde;

  • Os valores UID, GID e GIDLIST correspondem ao proprietário dos seus arquivos de mídia
  • /path/to/tvshows é o caminho para seus programas de TV
  • /path/to/movies é o caminho para seus filmes locais

Executar ls -l mostrará as informações de usuário e grupo de seus diretórios de mídia e nós de renderização.

Para imprimir UID e GID, use getent passwd | cut -d: -f3 e getent grupo | cut -d: -f3 respectivamente.

Para iniciar o servidor Emby execute os comandos abaixo.

$ docker compose up -d
[+] Running 5/5
 ✔ emby 4 layers [⣿⣿⣿⣿]      0B/0B      Pulled                                                                                                                                                  15.6s
   ✔ 8dfc70c9a1cf Pull complete                                                                                                                                                                  0.4s
   ✔ dfdf7ff41865 Pull complete                                                                                                                                                                  3.0s
   ✔ 2e11cacd3fbe Pull complete                                                                                                                                                                  1.6s
   ✔ 9bfa438fee60 Pull complete                                                                                                                                                                  1.1s
[+] Running 0/1
 ⠋ Container embyserver  Creating
[+] Running 2/2
 ✔ Container embyserver                                            Started

Verifique o status do contêiner

$ docker compose ps
NAME         IMAGE             COMMAND   SERVICE   CREATED          STATUS          PORTS
embyserver   emby/embyserver   "/init"   emby      50 seconds ago   Up 49 seconds

As portas nas quais o servidor Emby irá escutar.

#  ss -tunelp | grep -i EmbyServer
udp   UNCONN 0      0               127.0.0.1:55124      0.0.0.0:*    users:(("EmbyServer",pid=3803,fd=246)) uid:1000 ino:34141 sk:1 cgroup:/system.slice/docker-fdc36525965470ea8ac04103ffaa3494148add08893f4a637b87410b93399349.scope <->
udp   UNCONN 0      0                 0.0.0.0:1900       0.0.0.0:*    users:(("EmbyServer",pid=3803,fd=243)) uid:1000 ino:34138 sk:2 cgroup:/system.slice/docker-fdc36525965470ea8ac04103ffaa3494148add08893f4a637b87410b93399349.scope <->
udp   UNCONN 0      0                 0.0.0.0:44936      0.0.0.0:*    users:(("EmbyServer",pid=3803,fd=244)) uid:1000 ino:34139 sk:3 cgroup:/system.slice/docker-fdc36525965470ea8ac04103ffaa3494148add08893f4a637b87410b93399349.scope <->
udp   UNCONN 0      0           49.13.153.179:57349      0.0.0.0:*    users:(("EmbyServer",pid=3803,fd=245)) uid:1000 ino:34140 sk:4 cgroup:/system.slice/docker-fdc36525965470ea8ac04103ffaa3494148add08893f4a637b87410b93399349.scope <->
udp   UNCONN 0      0                       *:7359             *:*    users:(("EmbyServer",pid=3803,fd=239)) uid:1000 ino:34137 sk:7 cgroup:/system.slice/docker-fdc36525965470ea8ac04103ffaa3494148add08893f4a637b87410b93399349.scope v6only:0 <->
tcp   LISTEN 0      512                     *:8096             *:*    users:(("EmbyServer",pid=3803,fd=208)) uid:1000 ino:34121 sk:a cgroup:/system.slice/docker-fdc36525965470ea8ac04103ffaa3494148add08893f4a637b87410b93399349.scope v6only:0 <->

Acesse a interface da Web do Emby Media Server

Depois de iniciar o contêiner com sucesso, você pode acessar a interface web na porta 8096 ou 8920 no IP do seu host docker – http://IPdoServidor:8096

Crie a primeira conta de usuário que terá privilégios administrativos.

Você pode adicionar diretórios de mídia neste momento ou mais tarde no painel da web.

Habilite o mapeamento automático de portas para acesso remoto.

Concorde com os termos de serviço.

Uma vez concluídas as configurações, clique no botão “Concluir” .

Clique em “Login Manual” para prosseguir com o login.

Faça login com o nome de usuário e senha atribuídos no momento da criação do usuário.

Aqui está o cuidado após o login. Use o ícone de estrela para acessar o painel de administração.

O painel de administração tem uma aparência semelhante ao mostrado abaixo.

Bibliotecas de mídia podem ser adicionadas em Configurações –> Biblioteca

Empacotando

O processo de configuração do servidor Emby é direto, com apenas algumas etapas simples. Esta solução torna mais fácil para qualquer pessoa ter um servidor de mídia pessoal em segundos. Visite o fórum oficial da comunidade Emby para ler mais.

Artigos semelhantes:

  • Como instalar o Jellyfin Media Server no Ubuntu ou Debian
  • Como executar o Plex Media Server em contêineres Docker
  • Instale o Plex Media Server no Ubuntu