Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

304
Views
Installing Kubernetes in Docker container

I want to use Kubeflow to check it out and see if it fits my projects. I want to deploy it locally as a development server so I can check it out, but I have Windows on my computer and Kubeflow only works on Linux. I'm not allowed to dual boot this computer, I could install a virtual machine, but I thought it would be easier to use docker, and oh boy was I wrong. So, the problem is, I want to install Kubernetes in a docker container, right now this is the Dockerfile I've written:

# Docker file with local deployment of Kubeflow
FROM ubuntu:18.04

ENV USER=Joao
ENV PASSWORD=Password
ENV WK_DIR=/home/${USER} 

# Setup Ubuntu
RUN apt-get update -y
RUN apt-get install -y conntrack sudo wget

RUN useradd -rm -d /home/${USER} -s /bin/bash -g root -G sudo -u 1001 -p ${PASSWORD} ${USER}
WORKDIR ${WK_DIR}

# Installing Docker CE
RUN apt-get install -y apt-transport-https ca-certificates curl software-properties-common
RUN curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
RUN add-apt-repository \
    "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
    $(lsb_release -cs) \
    stable"
RUN apt-get update -y
RUN apt-get install -y docker-ce docker-ce-cli containerd.io

# Installing Kubectl
RUN curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.15.0/bin/linux/amd64/kubectl
RUN chmod +x ./kubectl
RUN mv ./kubectl /usr/local/bin/kubectl

# Installing Minikube
RUN curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
RUN install minikube-linux-amd64 /usr/local/bin/minikube


ENV PATH="${PATH}:${WK_DIR}"
COPY start.sh start.sh
CMD sh start.sh

With this, just to make the deployment easier, I also have a docker-compose.yaml that looks like this:

services:
  kf-local:
    build: .
    volumes:
      - path/to/folder:/usr/kubeflow
    privileged: true

And start.sh looks like this:

service docker start

minikube start \
     --extra-config=apiserver.service-account-issuer=api \
     --extra-config=apiserver.service-account-signing-key-file=/var/lib/minikube/certs/apiserver.key \
     --extra-config=apiserver.service-account-api-audiences=api \
     --driver=docker

The problem is, whenever I try running this I get the error:

X Exiting due to DRV_AS_ROOT: The "docker" driver should not be used with root privileges.

I've tried creating a user and running it from there also but then I'm not being able to run sudo, any idea how I could install Kubernetes on a Docker container?

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

As you thought you are right in case of using VM and that be easy to test it out.

Instead of setting up Kubernetes on docker you can use Linux base container for development testing.

There is linux container available name as LXC container. Docker is kind of application container while in simple words LXC is like VM for local development testing. you can install the stuff into rather than docker setting up application inside image.

read some details about lxc : https://medium.com/@harsh.manvar111/lxc-vs-docker-lxc-101-bd49db95933a

you can also run it on windows and try it out at : https://linuxcontainers.org/

If you have read the documentation of Kubeflow there is also one option multipass

Multipass creates a Linux virtual machine on Windows, Mac or Linux systems. The VM contains a complete Ubuntu operating system which can then be used to deploy Kubernetes and Kubeflow.

Learn more about Multipass : https://multipass.run/#install

over 4 years ago · Santiago Trujillo Report

0

Insufficient user permissions on the docker groups and minikube directory cause this error ("X Exiting due to DRV_AS_ROOT: The "docker" driver should not be used with root privileges.").

You can fix that error by adding your user to the docker group and setting permissions to the minikube profile directory (change the $USER with your username in the two commands below):

sudo usermod -aG docker $USER && newgrp docker

sudo chown -R $USER $HOME/.minikube; chmod -R u+wrx $HOME/.minikube
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!