Considerando sua localização na curva de aprendizado, eu não usaria o Docker para sua tarefa.
Se você estiver usando o Docker para isolamento do processo, poderá usar usuários Unix exclusivos para isso ou o systemd também incluirá diretivas para limitar o acesso de um serviço do systemd. Veja por exemplo Capabilities= in man systemd.exec .
Além disso, para isolamento do processo com o Docker, você executaria cada um dos bancos de dados e do servidor da Web em diferentes contêineres do Docker.
Outro recurso importante que systemd fornece é o gerenciamento de processos. Isso é-- se o seu processo de httpd falhar, o systemd irá reiniciá-lo para você.
Minha recomendação é primeiro obter todos os seus processos em execução diretamente em um servidor host usando o systemd. Muitos pacotes modernos já vêm com arquivos de configuração systemd .
Uma vez que você tenha um bom entendimento de systemd , está claro qual o benefício que o Docker irá oferecer, então considere o Docker no mix.
No meu trabalho, tentamos usar o Docker para gerenciar um conjunto de serviços, mas depois gerenciamos diretamente com systemd e o resultado é um sistema mais limpo que a equipe prefere com menos scripts bash para colar as coisas e manter eles.