要kubectl
在 a 中使用,pod
您需要在pod
.
您可以使用安装的kubectl
.
我认为 Dockerfile 可能如下所示:
FROM ubuntu:14.04
# Install.
RUN \
sed -i 's/# \(.*multiverse$\)/\1/g' /etc/apt/sources.list && \
apt-get update && \
apt-get -y upgrade && \
apt-get install -y build-essential && \
apt-get install -y software-properties-common && \
apt-get install -y byobu curl git htop man unzip vim wget && \
rm -rf /var/lib/apt/lists/* && \
# Installing kubectl using native package management
apt-get install -y apt-transport-https && \
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add - && \
echo 'deb https://apt.kubernetes.io/ kubernetes-xenial main' | sudo tee -a /etc/apt/sources.list.d/kubernetes.list && \
apt-get update && \
apt-get install -y kubectl
# Add files.
ADD root/.bashrc /root/.bashrc
ADD root/.gitconfig /root/.gitconfig
ADD root/.scripts /root/.scripts
# Set environment variables.
ENV HOME /root
# Define working directory.
WORKDIR /root
# Define default command.
CMD ["bash"]
或者为容器定义命令和参数,kubectl
并在启动时使用它来安装pod
。
如果你想在 Kubernetes Deployment 中使用它,部分.yaml
可能如下所示:
...
spec:
containers:
- name: ubuntu-with-kubectl
image: ubuntu
command: ["/bin/sh","-c"]
args:
- apt-get update && apt-get install -y apt-transport-https;
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -;
echo 'deb https://apt.kubernetes.io/ kubernetes-xenial main' | tee -a /etc/apt/sources.list.d/kubernetes.list;
apt-get update;
apt-get install -y kubectl;
...
您也可以使用本指南Install and Set Up kubectlkubectl exec -it <pod_name> bash
进入 pod 并手动安装,但它会在容器重启时消失。