Running compository/dna in docker

I’m trying to get any RSM app running in docker, as I hear that Big Sur + nix is not working for now. I am starting with the https://github.com/compository/dna repo, which makes use of images build from https://github.com/guillemcordoba/holochain-rsm-docker .

I got some errors locally, and made a fork of the compository/dna repo to run the docker build in a github action, where I get the same error as locally.

The error:

error: failed to compile `compository v0.1.0 (https://github.com/compository/cli#3617aacf)`, intermediate artifacts can be found at `/tmp/cargo-installO5jc7k`

Caused by:
  failed to select a version for `serde`.
      ... required by package `holochain_test_wasm_common v0.0.1 (https://github.com/holochain/holochain?rev=fd8049a#fd8049a4)`
      ... which is depended on by `holochain v0.0.100 (https://github.com/holochain/holochain?rev=fd8049a#fd8049a4)`
      ... which is depended on by `compository v0.1.0 (/usr/local/cargo/git/checkouts/cli-085e3346a90225ab/3617aac)`
  versions that meet the requirements `=1.0.104` are: 1.0.104

  all possible versions conflict with previously selected packages.

    previously selected package `serde v1.0.123`
      ... which is depended on by `hc_utils v0.2.0 (https://github.com/guillemcordoba/hc-utils?branch=develop#234ac2da)`
      ... which is depended on by `compository v0.1.0 (/usr/local/cargo/git/checkouts/cli-085e3346a90225ab/3617aac)`

  failed to select a version for `serde` which could resolve this conflict
The command '/bin/sh -c cargo install --git https://github.com/compository/cli' returned a non-zero code: 101

I’m thinking to roll back some versions, to a previous working state, but could also try to roll forward to converge on new serde version. Any thoughts @guillemcordoba ?

Also @concordis I think you said you got this working, any advice?

1 Like

Hi @harlan :smiley:

Great to see this movement. So, really you are trying to build the docker image, but I get the impression that you just want to run it? If this is the case, just go to https://compository.github.io/app/ and follow the instructions there to run the docker image. It should work out of the box.

As far as why the compilation is broken, I am in the process of building a new compository release right now, so hoping to get that sorted out pretty soon.

Thanks! That does indeed give a way to run compository locally…

To clarify what I really want: is a working RSM app that I can build/run from source locally, ideally at the “hello world” (or a bit beyond) level, to get a working development environment for RSM app dev.

The more I dig into compository, the more I realize how multilayered it is, so I may try to get something a bit simpler working in docker, eg elemental chat.

3 Likes

I want this same exact thing. Any chance someone who knows how to do this might hold a zoom class on setting up something like this? (Again, I can pay something reasonable for this service, and it can be recorded and online as a resource for others who are also having trouble getting to square one.)

I did get the compository running locally but I wasn’t sure what to do with it once it was up. Not all of the front end features seemed to work. It was pretty much completely opaque to me. There is so much new here that some hand-holding would go a long way, IMO.

1 Like

Hi @concordis, my reservation for this is that holochain environment is designed around nix. Really, the docker images I have worked with are not designed for development, but more for temporary publishing of the apps until we have other methods.

Actually, if the official setup is not working for you at the moment, I’d recommend using a virtual machine running linux and following the official instructions. This way, even when holochain upgrades, you’ll be able to follow it and keep working.

If not, you are going to find a lot of issues: lack of code -> image integration, difficulty of running tryorama tests, you have to use socat to bind to another port than the normal one… It would be a real hassle to start with I think.

Whatever you think is the best process, approach, and set-up, let’s do that.

My intended next step is to get a headless ubuntu vm via multipass, and nix / holonix from there.

Then I can skip the linux UI layer, and keep using mac for dev tooling, just running HC server stuff in the vm.

…or so I believe. If I get that running I’ll report back.

3 Likes

same please :pray:

I would like to also, could you please advise me how to do this?

could you please suggest ideal mobile hardware specs?

will I eventually need a desktop?

I’ve made progress on this; more in this thread:

1 Like