vscode 远程连接服务器docker容器的设置方法

 更新时间:2021年11月02日 11:31:30   作者:圣颖君  
本文主要介绍了vscode 远程连接服务器docker容器的设置方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

拉取镜像

docker pull [options] name [:tag] 表示从仓库拉取镜像 options是参数 tag是版本

运行镜像(产生一个容器)

docker run [options] image [:tag] [command] [arg…]

运行一个容器 以镜像为模版创建容器 options 操作 tag版本 command 运行时候执行的命令 arg 参数

选项              选项简写          说明
–detach                 -d       在后台运行容器,并且打印容器id。
–interactive         -i       即使没有连接,也要保持标准输入保持打开状态,一般与 -t 连用。
–tty                 -t       分配一个伪tty,一般与 -i 连用。

docker容器执行任务完成后就会处于exited状态,如果想让容器处于up状态,可以使用下列命令,如:
使用镜像nginx:latest以交互模式后台启动一个容器,在容器内执行/bin/bash命令。

docker run -dit nginx:latest /bin/bash

启动容器

docker start 容器ID

进入容器

docker attach 容器ID
docker exec -it 容器ID /bin/bash
docker exec -it 容器的name bash

查看所有镜像

列出镜像列表:docker images [OPTIONS] [REPOSITORY[:TAG]]

退出容器

如果要正常退出不关闭容器,请按(Ctrl+P+Q)进行退出容器
如果使用exit退出,那么在退出之后会关闭容器

重启容器

使用(docker restart 容器id)命令重启容器

查看所有容器

docker container ls
docker ps (查看正在运行的容器)
docker ps -a (查看所有容器)

删除容器

我们也可以使用docker container rm命令删除一个指定的容器,或简洁的写法docker rm命令来删除容器,不过不允许删除正在运行的容器,因此如果要删除的话,就必须先停止容器。

docker rm container_id

当我们需要批量删除所有容器,可以用下面的命令:

docker rm $(docker ps -q)

批量删除docker中已经停止的容器

方法一:

#显示所有的容器,过滤出Exited状态的容器,取出这些容器的ID,

sudo docker ps -a|grep Exited|awk '{print $1}'

#查询所有的容器,过滤出Exited状态的容器,列出容器ID,删除这些容器

sudo docker rm `docker ps -a|grep Exited|awk '{print $1}'`

方法二:

#删除所有未运行的容器(已经运行的删除不了,未运行的就一起被删除了)

sudo docker rm $(sudo docker ps -a -q)

方法三:

#根据容器的状态,删除Exited状态的容器

sudo docker rm $(sudo docker ps -qf status=exited)

方法四:

#Docker 1.13版本以后,可以使用 docker containers prune 命令,删除孤立的容器。

vscode通过ssh远程连接服务器中的容器

1.运行ubuntu镜像来创建容器:

docker run -it ubuntu

2.进入容器,设置容器root密码

修改容器的root密码:passwd
密码设置为:123456

3.安装ssh服务

apt-get update
apt-get install openssh-server

4.修改ssh配置,允许root登录,一般进入容器时使用的都是 root 账号,但是 ssh 默认是禁止 root 账号使用密码远程登录的,所以需要修改 ssh 配置文件使其允许:

vim  /etc/ssh/sshd_config
将PermitRootLogin的值从withoutPassword改为yes(去掉前面的#号)
如果没有vim可以安装个:
apt-get install vim

5.保存容器修改并生成新的镜像

docker commit  <container_id>  <new_image_name>
如 docker commit  <container_id> ubuntu-ssh

6.退出当前容器,并运行刚刚保存的新镜像(这次运行要端口映射并在后台运行)

exit(exit退出后会关闭容器)
docker run -dit  -p 8008:22 ubuntu-ssh (8008时端口号,ssh连接时要使用)

7.通过exec命令进入在后台运行的容器

docker exec -it  容器_id  /bin/bash
#exec是进入已经存在的容器,run是创建新容器

8.启动ssh服务

sudo service ssh start

另外(stop restart分别为关闭和重启)

9.判断启动是否成功

在终端中输入:ps -e|grep ssh,可以查看是否启动成功,如果有sshd,就说明启动成功。

输出如下:

$ sudo ps -e | grep ssh

 4031 ?        00:00:00 sshd------对应服务器端
 
sshd表示ssh-server启动了

10退出容器但不要关闭

exit(因为我们是通过exec指令进入容器的,所以exit时并不会退出容器,容器会在后台运行)

11远程连接

ssh root@host_id -p 8008

到此这篇关于vscode 远程连接服务器docker容器的设置方法的文章就介绍到这了,更多相关vscode 远程连接docker内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 详解基于docker-swarm搭建持续集成集群服务

    详解基于docker-swarm搭建持续集成集群服务

    这篇文章主要介绍了详解基于docker-swarm搭建持续集成集群服务,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-10-10
  • docker守护进程的配置和操作的方法

    docker守护进程的配置和操作的方法

    这篇文章主要介绍了docker守护进程的配置和操作的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-07-07
  • Windows Docker部署Kong网关的实现步骤

    Windows Docker部署Kong网关的实现步骤

    Kong是一个轻量级、快速、灵活的云原生API网关,本文主要介绍了Windows Docker部署Kong网关的实现步骤,具有一定的参考价值,感兴趣的可以了解一下
    2024-03-03
  • dockerfile制作apache镜像的方法

    dockerfile制作apache镜像的方法

    这篇文章主要介绍了dockerfile制作apache镜像的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • docker灵活的构建PHP环境的实现

    docker灵活的构建PHP环境的实现

    这篇文章主要介绍了docker灵活的构建PHP环境的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • Docker系列学习之Swarm mode管理节点常用命令详解

    Docker系列学习之Swarm mode管理节点常用命令详解

    这篇文章主要为大家介绍了Docker系列学习之Swarm mode管理节点常用命令详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • CentOS7.2服务器上搭建Docker私有镜像仓库操作示例

    CentOS7.2服务器上搭建Docker私有镜像仓库操作示例

    这篇文章主要介绍了CentOS7.2服务器上搭建Docker私有镜像仓库操作,结合实例形式分析了基于CentOS7.2平台docker安装、证书和密钥生成、私有镜像创建与启动等操作相关命令与使用技巧,需要的朋友可以参考下
    2018-06-06
  • 使用docker部署java项目运行环境的实现步骤

    使用docker部署java项目运行环境的实现步骤

    本文主要介绍了使用docker部署java项目运行环境的实现步骤,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-01-01
  • docker swarm 集群故障与异常详解

    docker swarm 集群故障与异常详解

    这篇文章主要介绍了docker swarm 集群故障与异常详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • Docker从零构建php-nginx-alpine镜像的方法

    Docker从零构建php-nginx-alpine镜像的方法

    这篇文章主要介绍了Docker从零构建php-nginx-alpine镜像的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-11-11

最新评论