Docker基础:VMware虚拟机Centos7环境下docker安装及使用
1.docker简介
官网https://docs.docker.com/engine/install/
1.1 镜像(image)
docker镜像就好比是一个目标,可以通过这个目标来创建容器服务,通过镜像可以创建多个容器
1.2 容器(container)
docker利用容器技术,运行一个或者一组应用,通过镜像来创建的。
启动,停止,删除,基本命令
目前可以同期理解为一个简易的Linux系统
1.3 仓库(repository)
仓库用来存储镜像
2.docker安装
我是利用虚拟机搭建的centos环境,关于虚拟机的搭建可以参考https://www.cnblogs.com/pengboke/p/13063168.html
手动安装
2.1 卸载旧版本
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2.2 安装所需的软件包
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
2.3 设置仓库(以下选一种即可)
2.3.1 官方源地址
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
2.3.2 阿里云
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
2.3.3 清华大学源
sudo yum-config-manager \
--add-repo \
https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
2.4 安装最新版本的 Docker Engine-Community 和 containerd(docker-ce是社区版 而ee是企业版)
列出并排序您存储库中可用的版本(以下任选一种方案)
(1)yum list docker-ce --showduplicates | sort -r
安装特定版本
sudo yum install docker-ce-<version_string> docker-ce-cli-<version-string> containerd.io
(2)或者直接执行以下命令安装最新版
sudo yum install docker-ce docker-ce-cli containerd.io
2.5 启动 Docker
sudo systemctl start docker
2.6 运行 hello-world 进行验证
sudo docker run hello-world
3.卸载docker
3.1 删除安装包
yum remove docker-ce
3.2 删除镜像、容器、配置文件等内容
rm-rf /var/lib/docker
4.阿里云镜像加速
4.1 vim /etc/docker/daemon.json 4.2
{
"registry-mirrors": ["https://****.mirror.aliyuncs.com"]
}
4.3
# 重启服务
systemctl daemon-reload
systemctl restart docker
4.4 docker info 查看docker信息 最后几行
5.docker的常用命令
5.1 帮助命令
docker version #显示docer的版本信息
docker info #显示docker的系统信息 包括镜像和容器的数量
docker 命令 --help #命令
5.2 镜像命令
docker images #查看所有本地主机上的镜像 可以使用docker image ls代替
dokcer search #搜索镜像
dokcer pull #下载镜像 docker image pull 分层下载
docker rmi #删除镜像docker image rm
docker rmi -f 镜像id #根据镜像id删除
docker rmi -f 镜像id 镜像id 镜像id #删除多个镜像
docker rmi -f $(docker images -aq) #删除所有镜像
5.3 容器命令
docker run 镜像id #新建容器并启动
docker run -it centos /bin/bash
exit #容器直接退出
ctrl + P + Q #容器不停止退出
docker ps #列出所有的运行的容器 docker container list
docker ps -aq
docker rm 容器id #删除指定容器
docker rm -f $(docker ps -aq) #删除所有容器
docker ps -a -q | xargs docker rm #删除所有容器
dokcer start 容器id #启动容器
docker restart 容器id #重启容器
docker stop 容器id #停止当前正在运行的容器
dokcer kill 容器id #强制停止当前容器
5.4 后台启动命令
docker ps 后发现 centos停止了
docker容器使用后台运行,就必须要有要一个前台进程,docker发现没有应用,就会自动停止
nginx,容器启动后,发现自己没有提供服务,就会立刻停止,就是没有程序了
docker run -d centos #后台启动命令
5.5 查看日志
docker logs -t --tail n 容器id #查看n行日志
docker logs -ft 容器id #跟着日志
5.6 查看进程
docker top 容器id #查看容器中进程信息id
docker top 694f11ed26d1
5.7 查看镜像元数据
docker inspect 容器id #查看镜像的元数据
docker inspect 694f11ed26d1
5.8进入当前正在运行的容器
docker exec -it 694f11ed26d1(容器id) /bin/bash #进入当前容器后开启一个新的终端,可以在里面操作。(常用)
docker attach 694f11ed26d1(容器id) # 进入容器正在执行的终端
5.9 从容器内拷贝文件到主机
6.docker安装Nginx
6.1 安装nginx
docker run -d --name nginx00 -p 3344:80 nginx
6.2 查看容器
docker ps
6.3 查看nginx
7.docker安装tomcat
7.1 安装tomcat
docker run -it --rm tomcat:9.0
7.2 下载tomcat
docker pull tomcat
7.3 启动运行
docker run -d -p 8080:8080 --name tomcat01 tomcat
7.4 测试访问
curl localhost:8080
7.5 进入容器
docker ps #查看当前运行容器
~ docker exec -it 1bacf343cd06/bin/bash #进入容器
8.docker部署es+kibana
8.1下载启动elasticsearch(docker一步搞定)
docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.6.2
如果需要重新启动 可以删除后再启动
docker ps -a
docker rm 4dc703d1130b
8.2测试es是否启动成功
curl localhost:9200
8.3查看doker容器使用内存情况
doker stats
8.4关闭 添加内存的限制 修改配置文件 -e 环境配置修改
8.4.1 docker ps -a
8.4.2 docker rm -f c00920e31f2c
8.4.3 修改配置文件并启动
docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xmx512m" elasticsearch:7.6.2
8.5 测试es测试es是否启动成功
curl localhost:9200
9.docker可视化
9.1打开可视化服务(portainer)
docker run -d -p 8080:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --privileged=true portainer/portainer
Docker基础:VMware虚拟机Centos7环境下docker安装及使用的更多相关文章
- Hyperledger fablic 1.0 在centos7环境下的安装与部署和动态增加节点
Hyperledger fablic 1.0 在centos7环境下的安装与部署和动态增加节点 一.安装docker 执行代码如下: curl -sSL https://get.daocloud.io ...
- 全世界最详细的图形化VMware中linux环境下oracle安装(二)【weber出品必属精品】
<ORACLE 10.2.05版本的升级补丁安装> 首先我们解压 $ unzip p8202632_10205_LINUX.zip 解压后我们会发现多出了个文件夹,他是:Disk1,进入D ...
- 全世界最详细的图形化VMware中linux环境下oracle安装(一)【weber出品必属精品】
安装流程:前期准备工作--->安装ORACLE软件--->安装升级补丁--->安装odbc创建数据库--->安装监听器--->安装EM <前期准备工作> 安装 ...
- 基础--Redis在Linux环境下的安装
1. 安装redis服务 1.1 检查安装依赖程序 yum install gcc-c++yum install -y tclyum install wget 1.1.1 下载redis安装包 (或者 ...
- Centos7环境下Docker容器的安装与卸载
Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器.开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机).bare metal. ...
- Hyperledger fablic 0.6 在centos7环境下的安装与部署
原文:http://blog.csdn.net/zhaoliang1131/article/details/54617274 Hyperledger Fabric超级账本 项目约定共同遵守的 基本原则 ...
- 基础--Redis在Windows环境下的安装
1. 安装Redis 1.1 下载安装包 https://github.com/ServiceStack/redis-windows#3-run-the-redis-serverexe-using-t ...
- centos7环境下在线安装mysql
卸载mariadb centos默认安装了mariadb,因此,在安装mysql之前,需要卸载系统中安装的mariadb. 查看系统中所有已安装的mariadb包.命令:rpm -qa | grep ...
- centos7环境下mysql安装
1.去官网下载合适的yum源安装包 https://dev.mysql.com/downloads/repo/yum/ 2.yum 本地安装 命令:yum localinstall mysql57-c ...
随机推荐
- system verilog内建数据类型
- 在react中使用redux并实现计数器案例
React + Redux 在recat中不使用redux 时遇到的问题 在react中组件通信的数据是单向的,顶层组件可以通过props属性向下层组件传递数据,而下层组件不能向上层组件传递数据,要实 ...
- PHP8开启PHPStorm + Xdebug3
下载Xdebug 需要下载对应php版本xdebug 否则对加载xdebug失败 https://xdebug.org/download 我的是PHP版本 为php8.0.3-nts-x64 安装xd ...
- GO学习-(6) Go语言基础之运算符
Go语言基础之运算符 运算符用于在程序运行时执行数学或逻辑运算. 运算符 Go 语言内置的运算符有: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 算数运算符 运算符 描述 + 相加 - ...
- Python+Selenium学习笔记9 - 警告框处理
如下图所示,这种窗口是不能通过前端工具对其进行定位的,这里可以通过switch_to_alert()方法去接受这个弹窗 1 # coding = utf-8 2 3 from selenium imp ...
- 回文词——线性dp
#include<iostream> #include<cstdio> using namespace std; int n,f[5002][5002]; char str1[ ...
- Xilinx FPGA全局介绍
Xilinx FPGA全局介绍 现场可编程门阵列 (FPGA) 具有诸多特性,无论是单独使用,抑或采用多样化架构,皆可作为宝贵的计算资产:许多设计人员并不熟悉 FPGA,亦不清楚如何将这类器件整合到设 ...
- TVM将深度学习模型编译为WebGL
使用TVM将深度学习模型编译为WebGL TVM带有全新的OpenGL / WebGL后端! OpenGL / WebGL后端 TVM已经瞄准了涵盖各种平台的大量后端:CPU,GPU,移动设备等.这次 ...
- MindSpore张量mindspore::tensor
MindSpore张量mindspore::tensor MSTensor #include <ms_tensor.h> MSTensor定义了MindSpore Lite中的张量. 构造 ...
- 适用于AMD ROC GPU的Numba概述
适用于AMD ROC GPU的Numba概述 Numba通过按照HSA执行模型将Python代码的受限子集直接编译到HSA内核和设备功能中,从而支持AMD ROC GPU编程.用Numba编写的内核似 ...