Explorar o código

add: doc files

runningwater hai 1 ano
pai
achega
c1ce44af8f
Modificáronse 1 ficheiros con 126 adicións e 0 borrados
  1. 126 0
      doc/Docker Ubuntu 上安装 ssh 和连接 ssh.md

+ 126 - 0
doc/Docker Ubuntu 上安装 ssh 和连接 ssh.md

@@ -0,0 +1,126 @@
+# Docker  安装 Ubuntu
+
+1. 首先从云上拉取 ubuntu 的镜像
+
+    ```sh
+    docker pull ubuntu
+    ```
+
+     使用 `docker images` 或 `docker image ls`  查看刚才摘取下来的镜像
+    ![docker_pull_img](https://img2023.cnblogs.com/blog/376834/202412/376834-20241210113502081-740644074.png)
+
+    如上图示镜像 ID 为 `b1d9df8ab815`
+
+2. 启动镜像
+
+   输入命令 `docker run -itd -p 6789:22 b1d9df8ab815`,表示在后台启动镜像,并将本机的 `6789`  端口映射到容器的 `22` 端口,最后字符串是 IMAGES ID.
+    只要没有报错,显示一串字符就说明镜像启动成功,可以通过命令 `docker container ls` 或 `docker ps` 来查看运行的容器:
+
+    ![container_img](https://img2023.cnblogs.com/blog/376834/202412/376834-20241210121734810-258680536.png)
+
+    如上图示,容器的 ID 为 `7761329a4cc6`
+
+3. 进入容器,下载 openssh-server, 并修改 ssh 的配置,启动 ssh
+
+    输入命令`docker exec -it 7761329a4cc6 /bin/bash` 进入容器,执行命令:
+
+    ```sh
+    root@7761329a4cc6:/# apt-get update
+    Get:1 http://archive.ubuntu.com/ubuntu noble InRelease [256 kB]
+    Get:2 http://security.ubuntu.com/ubuntu noble-security InRelease [126 kB]
+    ...
+    Get:17 http://archive.ubuntu.com/ubuntu noble-backports/universe amd64 Packages [11.9 kB]
+    Fetched 26.6 MB in 20s (1361 kB/s)
+    Reading package lists... Done
+    root@7761329a4cc6:/# apt-get upgrade
+    ...
+    root@7761329a4cc6:/# apt-get install openssh-server
+    Reading package lists... Done
+    Building dependency tree... Done
+    Reading state information... Done
+    ...
+    0 upgraded, 82 newly installed, 0 to remove and 0 not upgraded.
+    Need to get 34.8 MB of archives.
+    After this operation, 123 MB of additional disk space will be used.
+    Do you want to continue? [Y/n] y
+    ...
+    Updating certificates in /etc/ssl/certs...
+    0 added, 0 removed; done.
+    Running hooks in /etc/ca-certificates/update.d...
+    done
+    ```
+
+4. 设置 root 密码
+
+   ```sh
+   root@7761329a4cc6:/# passwd
+   ```
+
+5. 修改 SSH 配置文件
+
+   ```sh
+   root@7761329a4cc6:/# vim /etc/ssh/sshd_config
+   ```
+
+    ![img](https://img2023.cnblogs.com/blog/376834/202412/376834-20241210123542500-101364487.png)
+
+    注释一行 `#PermitRootLogin prohibit-password`
+
+    添加一行 `PermitRootLogin yes` ,然后保存退出
+
+6. 重启 SSH 服务
+
+    ```sh
+    root@7761329a4cc6:/# /etc/init.d/ssh restart
+    * Restarting OpenBSD Secure Shell server sshd            [ OK ]
+    ```
+
+7. 本机连接 ssh
+
+   ```sh
+   (base) ➜  ~ ssh root@0.0.0.0 -p 6789
+   The authenticity of host '[0.0.0.0]:6789 ([0.0.0.0]:6789)' can't be established.
+    ECDSA key fingerprint is SHA256:vXNa4BXo0s63JV8VqLDD3iV5E+xEsuV/DdEkldeX7fQ.
+    Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
+    root@0.0.0.0's password:
+    Welcome to Ubuntu 24.04.1 LTS (GNU/Linux 5.10.25-linuxkit x86_64)
+
+    * Documentation:  https://help.ubuntu.com
+    * Management:     https://landscape.canonical.com
+    * Support:        https://ubuntu.com/pro
+
+    This system has been minimized by removing packages and content that are
+    not required on a system that users do not log into.
+
+    To restore this content, you can run the 'unminimize' command.
+
+    The programs included with the Ubuntu system are free software;
+    the exact distribution terms for each program are described in the
+    individual files in /usr/share/doc/*/copyright.
+
+    Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
+    applicable law.
+
+    root@7761329a4cc6:~#
+   ```
+
+    如上示, 输入 `yes` 同意加密认证,然后输入登陆密码,就可以远程返回 docker 系统
+
+8. 容器导出
+
+   ```sh
+    # 如上图示,容器的 ID 为 `7761329a4cc6`
+   (base) ➜  ~ docker export 7761329a4cc6 > ssh_ubuntu.tar
+   ```
+
+    如上示导出容器 `7761329a4cc6` 快照到本地文件 `ssh_ubuntu.tar`。
+
+9. 导入容器快照
+    可以使用 `docker import`  从容器快照中再导入为镜像, 以下将快照文件`ssh_ubuntu.tar`导入到镜像 `ssh/ubuntu:v1`
+
+    ```sh
+    (base) ➜  ~ cat ssh_ubuntu.tar | docker import - ssh/ubuntu:v1
+    sha256:995020b3864b182e012c1a128dd4be3c479289d42ae642321577d779bca223a6 
+    ```
+
+    ![img](https://img2023.cnblogs.com/blog/376834/202412/376834-20241211171235539-1010537636.png)