[CR] symbolic link or multiple code folder support #1

Closed
opened 2026-06-23 17:58:13 +02:00 by Griefed · 7 comments
Owner

@corasaniti on GitHub · https://github.com/Griefed/docker-ICEcoder/issues/3

Hi,

it would be nice to be able to enable support for symbolic links or multiple folders code/
Thanks

<!-- repoman:origin --> > **@corasaniti** on **GitHub** · https://github.com/Griefed/docker-ICEcoder/issues/3 Hi, it would be nice to be able to enable support for symbolic links or multiple folders code/ Thanks
Author
Owner

@Griefed on GitHub

What exactly do you mean with support of symbolic links? If you mean symbolic links from outside the docker container to the inside of the docker container, I am afraid that will not be supported. If you mean ICEcoder supporting symbolic links, I suggest hitting up the people from ICEcoder themselves, as this repository here is just a simple docker container wrapping ICEcoder.

As for the multiple foders for code, you coud always split your repositories into subfolders of /code. Or do you mean that GITURL should be cloned into its own folder inside of /code?

<!-- repoman:origin --> > **@Griefed** on **GitHub** What exactly do you mean with support of symbolic links? If you mean symbolic links from outside the docker container to the inside of the docker container, I am afraid that will not be supported. If you mean ICEcoder supporting symbolic links, I suggest hitting up the people from ICEcoder themselves, as this repository here is just a simple docker container wrapping ICEcoder. As for the multiple foders for code, you coud always split your repositories into subfolders of /code. Or do you mean that GITURL should be cloned into its own folder *inside* of /code?
Author
Owner

@corasaniti on GitHub

I would like to be able to map a local folder for example

/home/pi/user/python

but without pointing to the real folder but to a symbolic link created before the launch of the container ...
Thanks in advance
Piero

<!-- repoman:origin --> > **@corasaniti** on **GitHub** I would like to be able to map a local folder for example /home/pi/user/python but without pointing to the real folder but to a symbolic link created before the launch of the container ... Thanks in advance Piero
Author
Owner

@Griefed on GitHub

You could always mount to the code directory if you so desire:

volumes:
  - /home/pi/user/python:/code/python

which would map the python folder from your your users home directory inside the /code/python- directory inside the container.

Another example I just tested:

    volumes:
      - ./icecoder/plugins:/plugins
      - ./icecoder/data:/data
      - ./icecoder/config:/config
      - ./icecoder/code:/code
      - /home/griefed/Downloads:/code/Downloads

Results in:

icecoder/code/
├── Downloads
├── giturl.lock
└── ServerPackCreator
    ├── build.gradle
    ├── CHANGELOG.md
    ├── CODE_OF_CONDUCT.md
    ├── CONTRIBUTING.md
    ├── Dockerfile
    ├── gradle
    ├── gradle.properties
    ├── gradlew
    ├── gradlew.bat
    ├── img
    ├── LICENSE
    ├── README.md
    ├── renovate.json
    ├── root
    ├── settings.gradle
    └── src
<!-- repoman:origin --> > **@Griefed** on **GitHub** You could always mount to the code directory if you so desire: ```yaml volumes: - /home/pi/user/python:/code/python ``` which would map the python folder from your your users home directory inside the `/code/python`- directory inside the container. Another example I just tested: ```yaml volumes: - ./icecoder/plugins:/plugins - ./icecoder/data:/data - ./icecoder/config:/config - ./icecoder/code:/code - /home/griefed/Downloads:/code/Downloads ``` Results in: ```bash icecoder/code/ ├── Downloads ├── giturl.lock └── ServerPackCreator ├── build.gradle ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── Dockerfile ├── gradle ├── gradle.properties ├── gradlew ├── gradlew.bat ├── img ├── LICENSE ├── README.md ├── renovate.json ├── root ├── settings.gradle └── src ```
Author
Owner

@corasaniti on GitHub

so, i can also mount multiple source folders as follows in docker create command?

-v /home/pi/python/:/code/python
-v /home/pi/java/:/code/java

Thanks again
Piero

<!-- repoman:origin --> > **@corasaniti** on **GitHub** so, i can also mount multiple source folders as follows in docker create command? ` -v /home/pi/python/:/code/python ` ` -v /home/pi/java/:/code/java` Thanks again Piero
Author
Owner

@Griefed on GitHub

Aye, as long as you do not mount the base folder /code, so only subfolders of /code, it's fine.
Symlinks from the host to the container do not work. Believe me, I tried that too, back when I got into Docker.😂

Be aware though:
Say you mapped /code as follows:
./icecoder/code:/code
and another directory as follow:
/home/griefed/Downloads:/code/Downloads
and Downloads contains 10 files.

If you were to check the ./icecoder/code/Downloads folder on the host, it will appear empty, but if you check inside the container, the aforementioned 10 files are there. If you delete a from the /code/Downloads folder in the container, say from the ICEcoder webinterface for example, that file will be deleted from /home/griefed/Downloads.
Just something to be aware of, as it can be confusing at times.

<!-- repoman:origin --> > **@Griefed** on **GitHub** Aye, as long as you do not mount the base folder `/code`, so ***only*** subfolders of `/code`, it's fine. Symlinks from the host to the container do not work. Believe me, I tried that too, back when I got into Docker.😂 Be aware though: Say you mapped `/code` as follows: `./icecoder/code:/code` and another directory as follow: `/home/griefed/Downloads:/code/Downloads` and Downloads contains 10 files. If you were to check the `./icecoder/code/Downloads` folder on the host, it will appear empty, **but** if you check inside the container, the aforementioned 10 files are there. If you delete a from the `/code/Downloads` folder in the container, say from the ICEcoder webinterface for example, that file will be deleted from `/home/griefed/Downloads`. Just something to be aware of, as it can be confusing at times.
Author
Owner

@corasaniti on GitHub

Sure,

I tried making a change and saving the file from the File-Save menu

The changed files in the container are synchronized with the host folder. This is correct!!!
It is obvious that if I delete a file from the IDE, I also delete it on the host.

I close the issue
Thank you

<!-- repoman:origin --> > **@corasaniti** on **GitHub** Sure, I tried making a change and saving the file from the File-Save menu The changed files in the container are synchronized with the host folder. This is correct!!! It is obvious that if I delete a file from the IDE, I also delete it on the host. I close the issue Thank you
Author
Owner

@Griefed on GitHub

You're very welcome. Thanks for getting in touch, glad I could help you.

Happy coding!

Cheers,
Griefed

<!-- repoman:origin --> > **@Griefed** on **GitHub** You're very welcome. Thanks for getting in touch, glad I could help you. Happy coding! Cheers, Griefed
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Griefed/docker-ICEcoder#1
No description provided.