请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

docker 中如何安装 docker

老师,我基于 golang:1.22-bookworm 镜像搭建了一个 go 的开发环境
我想问下,如何在 docker 中安装 docker,我在网上查了一些方法,都没有成功安装

下面是我的 Dockerfile

FROM golang:1.22-bookworm

ENV MYPATH /root/astak
WORKDIR $MYPATH
ENV SHELL /bin/bash

ENV LANG C.UTF-8

ADD z /root/.z_jump 
# RUN  apt-get update && apt-get install -y sudo zsh tree vim exa fzf
RUN apt-get update && apt-get install -y sudo zsh tree vim exa fzf openssh-server silversearcher-ag fd-find rsync \
    && git config --global init.defaultBranch main \
    && yes | ssh-keygen -t rsa -N '' -f /etc/ssh/ssh_host_rsa_key \
    && ssh-keygen -t dsa -N '' -f /etc/ssh/ssh_host_dsa_key 

# dotfiles
ADD bashrc /root/.bashrc
RUN echo '[ -f /root/.bashrc ] && source /root/.bashrc' >> /root/.zshrc; \
    echo '[ -f /root/.zshrc.local ] && source /root/.zshrc.local' >> /root/.zshrc
RUN mkdir -p /root/.config; \
    touch /root/.config/.profile; ln -s /root/.config/.profile /root/.profile; \
    touch /root/.config/.gitconfig; ln -s /root/.config/.gitconfig /root/.gitconfig; \
    touch /root/.config/.zsh_history; ln -s /root/.config/.zsh_history /root/.zsh_history; \
    touch /root/.config/.z; ln -s /root/.config/.z /root/.z; \
    # touch /root/.config/.rvmrc; ln -s /root/.config/.rvmrc /root/.rvmrc; \
    touch /root/.config/.bashrc; ln -s /root/.config/.bashrc /root/.bashrc.local; \
    touch /root/.config/.zshrc; ln -s /root/.config/.zshrc /root/.zshrc.local;
# end

正在回答 回答被采纳积分+3

1回答

木兮QwQ 2024-07-18 22:34:37
emm....docker中安装docker,这..你是有什么特殊的应用场景吗。

理论上这种套娃方式的安装是可以,但是在业务和需求中没有这项需求。

不妨你先描述你的场景,如果是多个服务的情况,那么你只需在一个容器里安装好多个服务,然后将这个容器构建成镜像就可以实现。
0 回复 有任何疑惑可以回复我~
  • 提问者 uccs #1
    我本地没有 go 环境,我是用 docker 跑的 go 环境,用的镜像是 golang:1.22-bookworm,然后通过 vscode 插件 Dev Containers 连接到 docker 内部进行开发的,mysql,etcd,redis 都是单独的 docker 服务,通过放在一个网络中实现互相通信的,vscode 自带了端口映射功能,本地调试也很方便,所以我一直用这种方式开发
    
    我用 docker 模拟了 linux 虚拟机,然后这次课程用到 docker-compose 才有在 docker 中安装 docker 的需求(我个人的需求)
    
    golang:1.22-bookworm 这个基于 debian,apt 安装 docker 我老是安装失败,输入 docker version ,显示 Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
    现在我准备装个 centos 的镜像,然后尝试用 yum 安装 docker
    回复 有任何疑惑可以回复我~ 2024-07-18 23:34:02
  • 你可以这样,你可以构建一个含有go环境的docker,然后通过这个docker容器基于文件共享的方式进行项目的编译即可哦。
    
    
    其他可以与课程一样。
    回复 有任何疑惑可以回复我~ 2024-07-19 18:56:29
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信