Starting vncserver using supervisord inside a Linux container

I’m trying to start vncserver using supervisord at the bootup time for the lxc container (I don’t think being a container is relevant). The issue is that the machine starts as root. My supervisord program section looks like:

command=/usr/bin/vncserver -fg -geometry 1024x768 :1

However, I find that the log files show its trying to create a password, though there already exists a password in /home/ubuntu/.vnc/passwd

  • Dockerize Spring Boot Java app with Kafka, Zookeeper, and MongoDB [closed]
  • Couldn't find Docker Tool Window IntelliJ IDEA 2016.2.4 (Ultimate)
  • Escaping Docker attach one started from bash script
  • Docker Registry 2.0 - how to delete unused images?
  • Rabbitmq producer (symfony 3 ) and error with consumer ( NodeJs )
  • How can I install pdal in python in a dockerfile?
  • Wondering if I am missing something? Isn’t user supposed to change the user, $HOME and $USER before running the command?

  • Docker swarm node hostnames are the same
  • How to run google chrome headless in docker?
  • How to enable_ipv6 with docker compose version 3
  • Docker: Can a secret created and deleted in a single RUN command be recovered from the resulting image?
  • Is there any way to override the “network/ipc” container in the kubernetes pod declaration?
  • Bamboo+Docker+Kubernetes deployment
  • One Solution collect form web for “Starting vncserver using supervisord inside a Linux container”

    You can define to run a container with specific user’s name (if existing) or UID without any existing user in the image/container.

    Docker documentation:


    root (id = 0) is the default user within a container. The image
    developer can create additional users. Those users are accessible by
    name. When passing a numeric ID, the user does not have to exist in
    the container.

    The developer can set a default user to run the first process with the
    Dockerfile USER instruction. When starting a container, the operator
    can override the USER instruction by passing the -u option.

    -u="": Username or UID

    Note: if you pass a numeric uid, it must be in the range of

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.