Repository for running Audirvana Studio/Origin with Docker

Hello, I have prepared a repository which should make things a little easier for those who like to run Audirvana using Docker on linux.
The repository is here.
It is obligatory for me to mention that I took inspiration from this thread.
Differently from that solution, I am not incorporating the portions of the docker-compose that connect to samba on my compose files. IMO this should be done on the os level with tools like autofs, and on top of that I’d prefer sshfs connections for better security. But that’s just my take on that, and I’d like the audirvana core to stay where the files are, so no remote filesystems should be involved in my ideal use-case.

I hope this is helpful. Will be waiting for feedback, in the meantime, thank you for the attention.

2 Likes

Hi @GioF71 ,

I don’t know much, so can you tell me whether running Studio with Docker would be a good idea if I want to access my music files on an external USB drive from many different OSs (Windows, MacOS, 4 different Linux distros - I won’t be running Docker on 2 of the Linux distros or Windows, but would consider it on 2 distros and MacOS)? Would it bring any advantages/disadvantages over running Studio installed directly to the OSs?

Hello @Jud and thank you again for the your generous contribution.
About your questions, I’d say that generally speaking docker imposes a very small overhead if you compare the performances against natively installed applications. Such overhead is negligible with modern hardware (even a Pi4 is more than capable). You pay the most in terms of download/build time (for downloading or rebuilding the images), but about download, when using regular installations, you would still have to download updated binaries when a new version comes out.
So why bother?

  1. you can use virtually any distribution, the only prerequisite is to have Docker installed.
  2. you don’t actually have to “install” anything on your system, so we are done with libraries/binaries incompatibilities (but with this, I am not saying that Audirvana is problematic under that aspect: for what I have seen it isn’t problematic at all).
  3. Stop/remove the container and it’s just it was never there. No packages to remove. Maybe just the images if you never want to use that again.

These are some of the general advantages of Docker as a containerization platform, not anything specific to Audirvana or any audio-related application.

Container startup time can be marginally longer (again, I consider it negligible on modern hardware).
In terms of audio quality, I cannot notice any difference if I try to compare the sound quality with what comes from a natively installed equivalent application. I’d be surprised if anyone was proven to be able to tell one from the other reliably, so in a proper A/B blind test.

So I am currently using docker on most of my devices for audio, with great satisfaction. For example with apps like mpd/upmpdcli, squeezelite and others, it’s so easy to create multiple instances of any of those, maybe if you have multiple dacs or if you want to test different configurations (e.g. with upsampling or not). Try with regular packages: you will find yourself creating new systemd units or scripts. And what if you want different versions of the same app? a nightmare without containerization (although it’s possible of course).

Moreover, in the case of Audirvana core, if one should want to install the docker image on a server device, with no audio devices attached, as a source for remote players, you wouldn’t even have to worry of docker passing audio devices to the container correctly (my opinion: it does pass audio devices correctly, so we should not worry) because this would “just” be a server without any audio capabilities by itself alone.

Different considerations can be made about Windows and MacOS machines. Those o.s. generally run docker containers using Docker Desktop, which in turn operates through a hidden virtual machine. The containers run on that virtual machine. In this scenario, I’d rather not run audirvana with docker for at least these reasons:

  1. audio devices pass through a virtual machine (never tried that, but I don’t like the idea too much).
  2. at least with windows, host networking does not work afaik, so your remote app would not “see” the server.
  3. this might be the first reason, but anyway: there is a desktop version of audirvana avaiable, so I would not bother :slight_smile:

About the external usb drive, on a linux system (so where I consider using docker makes sense).
You need to make sure that the drive is mounted when you start the container. If your use case includes connecting the drive after startup (very likely to happen if you use a laptop I’d say), you would need to start the container after that event. A tool like Portainer might help you reduce the need to resort to the command line if this is something you don’t like to do. Also, usb dac might be unavailable if connected after the container is started. Again, nothing that a container restart would not solve.

I hope this is helpful. Looking forward to hearing your comments. Thank you again!

Hi @GioF71 -

I played with the Docker installation a bit in ArcoLinux (Arch-based) and Xubuntu. Because I could probably do the Audirvana package installation blindfolded by this time, it is a little unfair to say using Docker felt like taking a couple more steps to get to the same place, but that is how it struck me.

I tend to only change Audirvana as part of the routine update of all packages in an OS. I have the same settings for both my DACs (office and main system), so any installation/upgrade hassles and multiple instances aren’t considerations in my case.

Subjectively I felt the package installation sounded slightly better than using Docker, but with any sort of subjective listening like that, your impression that there is no difference could easily be the correct one.

I do have some interest in Audirvana as a source for remote players, so I may revisit if I explore that further.

Overall using your repository worked quite smoothly, particularly with Xubuntu. Thank you for making it available!

1 Like

Hello, of course this is an alternative method for installing the software. It starts to become convenient if you already have docker installed, otherwise you would be installing docker just to use this solution. This would make very little sense unless you are on an unsupported distribution.
Thank you for trying and for providing a feedback, much appreciated!

1 Like

Yes, my situation is unusual because I have a couple of minimized distros with no GUI installed just to run Audirvana. There are many people who have Docker installed and would be new to Audirvana, and for them this type of solution is perfect.

1 Like

Hello,

I am not able to get this to work. I am pulling the image gtunesdev/audirvana-studio, and setting the environment variable accept-eula to yes. but the logs shows “eula not accepted”. also shows “cannot start avahi”. could you shed some light?

Thanks for your effort.

This may help:

hello, the work in my repository is not related to the image “gtunesdev/audirvana-studio”. I checked it on docker hub and I see that the image is 24 days old (not necessarily a problem) and it’s amd64 only. I do not know how the image behaves, if it includes the binaries or if those are downloaded during the startup phase. There is no documentation.

If you want to use my repository, you should build the image using the commands that are listed in the README.md file (the doc which is displayed on the repository home page). This is because I prefer to avoid to publish images which would include proprietary binaries.

So assuming you want to use Audirvana Studio, in short, you should

  1. clone the repository and enter its directory
  2. build using ./build-studio.sh
  3. Customize your .env file sourcing it from the provided sample.env, setting at least the mandatory values, ACCEPT_EULA and BINARY_TYPE
  4. run with docker-compose up -d

You should find all the necessary details in the repo itself here.
If something does not work as expected, please open an issue there, even if the documentation is not clear enough and/or something is missing.

I hope this helps!

Edit:

I just updated the repository and added a disclaimer, as well as more information about the process, including cloning the repository itself.

2 Likes

Stumbled into this thread. The image you found was a thing I was dabbling with based on the work @HertzDonut did. It wasn’t meant for public consumption.

Hopefully @GioF71 cleared things up.

Hello @gTunes, the image built using my repository used to work for me until I had the subscription running. It does not seem there are a lot of users, so I don’t know if there is some issue.
Specifically, a running avahi-daemon is a requirement, the built container image contains avahi libraries but does not start the daemon on its own.

Thanks for this information. It was never intended to be used by anyone but me. Private repose create issues so it sometimes easier to just use a public repo for a private project.

I deleted the repo to prevent further confusion.

I corrected my previous post because it was not clear which image I was referring to. I never pulled your image, the fact that there was no information told me what you are confirming… it was for your private use :slight_smile:

2 Likes

Hi, I know this is a one year old thread, but i’m trying to setup a working audirvana docker installation. I have manage my self to make it work. I’m listening right now the most recent album of King Gizzard and The Lizard Wizard using my audirvana docker (running on unraid), with an iqaudio pro running in a Pi 5 with ropiee installed and my library inside a Roon Rock server via smb and i don’t have any complain. Everything works perfect.

But i have a lot of error message on the container saying the UPnP device can’t be found (which is not true, because it is casting): UPnP select device: can’t find the device JF Light Industries UpMPD with UID: uuid:xxxxxxxxxxxx. Also an error showing: UPnP Error 501 getting audio dB volume. already post it in another thread, but i don’t know if anyone on this thread can or know how to make it work? or at least remove the error logs.

I don’t know if it is, maybe, an issue with my image. With my Yamaha receiver, the issue with the volume stills, but the other one doesn’t. If i use the windows app, the problem with the volume stills, but the other one disappears even with the Pi. In my other post i have made a list of the logs. I ask, to know if i can do something about this.

Thank you all.

Seeing the same on Audirvana Linux, no Docker, and as with you it’s causing no problems, just that the error messages appear.

1 Like

Oh, this is unexpected for me.
So, it is not an issue with my instalation, it is something related with the Linux version?
I have a error message with the smb share to, which says it can’t see it, but it see, mount and read the smb folder located on the Roon server.

The only thing that works is the fact there is an issue with volume and the volume is fixed and I can’t take any action through Audirvana.

I will find the ability to hide the volume bar really appreciate, but I think it is not so important. As I imagine this is normal behavior, since I have the volume control off on my Ropiee (anyways it has never work, but I think there must be something related with my DAC), the Yamaha neither works and the only way I can tweak the volume is with the volume button on musiccast or the physical.

Anyways, it is good to know that it is not my installation.

Thank you so much

1 Like

Hello @Calaat, this looks like an effect of having a fixed volume on mpd. Can you post the mpd.conf configuration file, at least the portion related to the alsa output?
Thank you

1 Like

Hi and thx for the answer, i have been using your images a long time now. So, this is quite amazing for me :wink:

Do you mean this?
20250910 122518 worker: Audio device: 2:IQaudIO Pi-DAC PRO
20250910 122518 worker: ALSA card: has not been reassigned
20250910 122518 worker: MPD config: update not needed
20250910 122518 worker: ALSA output: I2S
20250910 122518 worker: ALSA mode: Direct (hw)
20250910 122518 worker: ALSA mixer: Digital
20250910 122518 worker: ALSA volume: 100% (0.00dB)
20250910 122518 worker: ALSA maxvol: 100%
20250910 122518 worker: ALSA loopback: off
20250910 122518 worker: MPD mixer Fixed (0dB)
20250910 122518 worker: Integ audio: vc4-kms-v3d
20250910 122518 worker: Audio formats: S16_LE, S24_LE, S32_LE
20250910 122518 worker: CamillaDSP: off
20250910 122518 worker: CDSP volume: 0dB
20250910 122518 worker: CDSP volrange: 60dB

I have installed MoOde because RoPieee which i usually use (i’m preparing my setup to jump from Roon), don’t use MPD. Anyways, i have put the volume fixed in the last test but the issue 501 appears when i put it to hardware and to software. Which make me think it is not related, since i have the same issue with my yamaha receiver RX-V4A and the issue can’t connect appears, to when it connects to chromecast.

I think it must be something is not working on Audirvana.

Why do you say you don’t use MPD? Maybe I am not understanding this part.

Moode is based on MPD, and uses it along with upmpdcli in order to offer the UPnP.
RoPieeeXL also AFAIK uses MPD and upmpdcli in order to offer the UPnP functionality. Also the output you post mentions mpd:

20250910 122518 worker: MPD mixer Fixed (0dB)

You might want to try to enable “Software Volume” on Moode and see if, after this, you can control volume in Audirvana

1 Like

Sorry for my lack of knowledge.
I ask ChatGPT if RoPieee uses or not MPD and it says no. So, I install MoOde and do the tests.

Anyways, in your reply I had the answer I needed. Even if it says it can’t control volume, just like when it says it can’t connect the UPnP player, it is not true. If I check the software or hardware option, it can control the volume.

So, the two messages are not true and everything seems to work correctly and fine. But, most important, it seems it is not related with my setup.

Thank you ;0)

1 Like