Docker容器中没有vi/ps等命令问题

 更新时间:2023年12月13日 09:43:43   作者:94甘蓝  
这篇文章主要介绍了Docker容器中没有vi/ps等命令问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

docker容器中没有vi/ps等命令问题

背景及原因

Docker中安装容器后,进入容器内,想要执行一些命令,却发现根本没有这个命令。

Docker容器都是最小化的Linux,所以有很多命令没有。

解决

# 进入容器内
docker exec -it container_name bash
 
# 安装vi编辑器
apt-get install vim
# 解决vi编辑器鼠标右键无法粘贴的问题
vi ~/.vimrc
# 输入以下内容,保存后即可
if has('mouse')
        set mouse-=a
endif
 
# 更换国内源(要不然下载太慢了)
# 备份
mv /etc/apt/sources.list /etc/apt/source.list.bak
# 编辑
vi /etc/apt/sources.list
# 添加以下内容
deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse 
deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse 
deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse 
deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse 
deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse 
deb-src http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse 
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse 
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse 
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse 
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse
# 保存后更新
apt-get update
 
# 安装ps命令
apt-get install procps

docker运行命令

docker安装

安装工具

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

.添加docker的yum库

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum makecache fast

安装Docker

sudo yum install docker-ce docker-ce-cli containerd.io

启动&开机启动

sudo systemctl start docker
systemctl enable docker

测试Docker

docker run hello-world

docker version

docker服务操作

  • 启动docker:systemctl start docker
  • 停止docker:systemctl stop docker
  • 重启docker:systemctl restart docker
  • 查看docker状态:systemctl status docker
  • 开机启动:systemctl enable docker
  • 查看docker概要信息:docker info
  • 查看docker帮助文档:docker --help

docker镜像操作

  • docker images :查看本地镜像
  • docker search 镜像名:搜索远程镜像
  • docker rmi 镜像名:版本/imageId :删除指定镜像
  • docker rmi ‘docker images -q’ :删除所有镜像
  • docker pull 镜像名:版本 :拉取镜像
  • docker push 镜像:版本 :推送镜像到远程

docker容器操作

运行交互式容器:

docker run -it --name=容器名 -p=linux端口:容器端口 -v=/linux目录:/容器目录 镜像名:版本 /bin/bash

运行守护式容器:

docker run -id --name=容器名 -p=linux端口:容器端口 -v=/linux目录:/容器目录 镜像名:版本
  • 查看容器:docker ps -a
  • 查看容器ID: docker ps -a -q
  • 删除容器:docker rm 容器名
  • 删除所有容器:docker rm docker ps -a -q
  • 停止一个容器:docker kill 容器名
  • 停止所有容器: docker kill docker ps -a -q
  • 启动容器:docker start 容器名
  • 重启容器:docker restart 容器名
  • 进入容器:docker exec -it 容器名 /bin/bash , 退出容器 exit 或者ctrl + p + q (交互式容器建议使用)
  • 拷贝文件到容器:docker cp /linux文件 容器:/容器目录
  • 从容器拷贝文件到linux: docker cp 容器:/文件 /linux目录
  • 查看IP: docker inspect 容器名
  • 查看日志:docker logs 容器名.

扩展 

Docker镜像加速器

配置加速器,否则下载镜像的时候回比较慢,默认是从docker hub下载

vi /etc/docker/daemon.json
{
“registry-mirrors”: [“https://5pfmrxk8.mirror.aliyuncs.com”]
}
sudo systemctl daemon-reload //重新加载配置
sudo systemctl restart docker //重启docker

或者直接执行:

sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-‘EOF' { “registry-mirrors”: [“https://5pfmrxk8.mirror.aliyuncs.com”] } EOF sudo systemctl daemon-reload sudo systemctl restart docker

列出docker下的所有镜像:docker images

  • REPOSITORY:镜像所在的仓库名称
  • TAG:镜像标签
  • IMAGE ID:镜像ID
  • CREATED:镜像的创建日期(不是获取该镜像的日期)
  • SIZE:镜像大小

这些镜像都是存储在Docker宿主机的/var/lib/docker目录下

搜索镜像

如果你需要从网络中查找需要的镜像,可以通过以下命令搜索

docker search 镜像名称

  • NAME:仓库名称
  • DESCRIPTION:镜像描述
  • STARS:用户评价,反应一个镜像的受欢迎程度
  • OFFICIAL:是否官方
  • AUTOMATED:自动构建,表示该镜像由Docker Hub自动构建流程创建的63.4拉取镜像

端口映射:

目录映射:

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 使用docker搭建sonarqube的方法

    使用docker搭建sonarqube的方法

    这篇文章主要介绍了使用docker搭建sonarqube的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • Dockerfile中的保留字指令的过程解析

    Dockerfile中的保留字指令的过程解析

    Dockerfile是用来构建Docker镜像的构建文件,由一系列命令和参数构成的脚本,本文重点给大家介绍Dockerfile中的保留字指令的过程解析,感兴趣的朋友跟随小编一起看看吧
    2021-11-11
  • Docker拉镜像报错error pulling image configuration: unknown blob

    Docker拉镜像报错error pulling image configuration:

    这篇文章主要介绍了Docker拉镜像报错error pulling image configuration: unknown blob的问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • docker部署nodejs开发环境详细步骤(基础示例篇)

    docker部署nodejs开发环境详细步骤(基础示例篇)

    这篇文章主要给大家介绍了docker部署nodejs开发环境详细步骤,docker是一个开源的应用容器引擎,可以为我们提供安全、可移植、可重复的自动化部署的方式,需要的朋友可以参考下
    2023-10-10
  • 使用Docker搭建Redis主从复制的集群

    使用Docker搭建Redis主从复制的集群

    这篇文章主要介绍了使用Docker搭建Redis主从复制的集群,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • spring-boot构建docker镜像上传仓库的示例教程

    spring-boot构建docker镜像上传仓库的示例教程

    这篇文章主要介绍了spring-boot构建docker镜像上传仓库,受限创建一个简单spring-boot-web项目,查看镜像上传仓库这时候有两种解决方案,对docker镜像上传仓库相关知识感兴趣的朋友跟随小编一起看看吧
    2022-12-12
  • Docker 常用命令详细整理

    Docker 常用命令详细整理

    这篇文章主要介绍了Docker 常用命令详细整理的相关资料,需要的朋友可以参考下
    2017-05-05
  • 使用docker搭建jenkins自动化工具的实现

    使用docker搭建jenkins自动化工具的实现

    大家在工作中,应该都有使用过jenkins 自动化打包或发布,本文主要介绍了使用docker搭建jenkins自动化工具的实现,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • MacOS Docker 安装的实现步骤

    MacOS Docker 安装的实现步骤

    本文主要介绍了MacOS Docker 安装的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06
  • docker开通2375端口防漏洞问题

    docker开通2375端口防漏洞问题

    这篇文章主要介绍了docker开通2375端口防漏洞问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08

最新评论