主力电脑是MacBook,有时候需要ubuntu环境只能求助于docker。同时一直在用的朋友服务器最近改成了nixos,不太适应,也需要docker配置ubuntu。
所以配置的ubuntu docker为主力环境,日常开启用ssh连接。
第一步:
docker pull ubuntu
默认下载最新版——22.04。
在家里目录下创建ubuntu22目录,与ubuntu镜像进行挂载,然后启动ubuntu镜像为container
docker run --name ubuntu22 -h ubuntu22-docker -ti -d -v /home/*username*/ubuntu22/:/home/*username*/ -p 9001:22 ubuntu
其中 –name是跑起来的container的名字;-h设定了ubuntu的hostname;-ti是即使没有连接,也要保持标准输入保持打开状态,一般t与i二者连用;-d后台运行;-v将本地文件夹与ubuntu容器中的文件夹映射到一起,-p则本地的9001端口与ubuntu 的22端口映射到了一起,如此一来便可以直接通过访问9001端口ssh连接ubuntu
docker exec -ti ubuntu22 /bin/bash
启动进入ubuntu镜像
apt update
更新apt源头
apt install -y sudo openssh-client openssh-server vim
启动ssh
service ssh start
ubuntu docker需要自行安装sudo、ssh、vim。
passwd useradd -d /home/*username* -m *username* -s /bin/bash -g sudo passwd *username* su *username* && cd ~
完成初始设置后切入用户进行操作
mkdir ./.ssh vim ./.ssh/auhorized_keys service ssh restart
配置ssh密钥免密码登陆。两次control+d后退出docker,此时在本地terminal执行
ssh -p 9001 *username*@localhost
测试是否连接成功。
最后安装常用包
sudo apt install -y curl wget git inetutils-ping tmux htop
接下来是偏主观个人爱好了,由于自带的bash比较丑陋,所以将其用zsh和oh my zsh进行美化。
sudo apt install zsh chsh -s $(which zsh)
重连后进入zshbash,继续进行zsh的初步配置
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" git clone --depth=1 https://gitee.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
将~/.zshrc中的主题项设置为
ZSH_THEME="powerlevel10k/powerlevel10k"
重启bash即可进入其初始配置页面。最后下载并安装自动补全插件
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
将~/.zshrc中的插件加上zsh-autosuggestions,成为
plugins=( git zsh-autosuggestions )
还支持在vscode里直接用ssh-remote连接进该镜像,十分好用。
原文链接:https://blog.csdn.net/weixin_46091531/article/details/126803933