Docker简单使用

1.简单认识

软件的打包技术,就是将打乱的多个文件打包为一个整体,比如想使用nginx,需要先有一台linux的虚拟机,然后在虚拟机上安装nginx.比如虚拟机大小1G,nginx100M。当有了docker后我们可以下载nginx 的镜像文件,直接运行即可。

镜像:images,是个压缩包文件,里面存放着安装好的程序。

容器:Container,Docker利用容器来运行应用。容器是从镜像创建的运行实例。它可以被启动、开始、停止、删除。每个容器都是相互隔离的、保证安全的平台。

2.docker安装

https://docs.docker.com/engine/install/debian/#installation-methods

bash 复制代码
// linux 安装

sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

//启动
systemctl start docker
//自启
systemctl enable docker

3.镜像常用指令

bash 复制代码
docker search  xxx #在docker仓库中寻找 镜像
bash 复制代码
docker images  #查看本地镜像列表
bash 复制代码
docker pull 下载镜像,拉取镜像
bash 复制代码
docker push # 上传镜像,推送镜像,推到官方仓库
docker rmi xxx
 #删除镜像,rm 删除image的意思,直接rm不加i表示要删除容器,可以通过名称加版本来删除,或者直接通过镜像id值来删除
 #docker rmi tomcat:latest 或者 docker rmi imageid值

4.容器常用命令

bash 复制代码
docker ps =docker container ls #参数: 默认之显示up状态的容器,-a查看所有容器,或者--
bash 复制代码
docker stop   停止容器  #例子 docker stop 容器id或者容器名字
docker kill   杀掉容器  #强制关闭容器,尽量不要用,很容易就启动不了了
docker start   启动容器  #例子 docker start 容器id或者容器名字
docker restart 重启重启  #例子 docker restart 容器id或者容器名字
docker rm     删除容器  #例子 docker rm 容器id或者容器名字,同时删除多个,就空格隔

删除容器前要停止容器。

bash 复制代码
docker rm -f `docker ps -a -q` #删除所有容器,-q是只显示容器id,反引号中的指令优先执行
bash 复制代码
docker top   查看容器内的进程  #例子docker top 容器id或者容器名字
docker stats 查看容器的资源占用情况
bash 复制代码
docker exec -it   进入容器  #例子: docker exec -it 容器id或者容器名字
 # 直接交互指令:docker exec -it 76738703b7b2 ls # 执行ls指令
 # 进入终端:docker exec -it 76738703b7b2 /bin/bash或者/bin/sh #/bin/bash打开一个终端窗口

5.使用docker安装软件

安装nginx /mysql

bash 复制代码
docker run -d -p 80:80 nginx

docker run --name mysql -e MYSQL_ROOT_PASSWORD=123456  -d mysql:5.7  
docker run -d  --link mysql:mysql -p 86:80 wordpress:5.6

-d  #放后台运行
-p 端口映射 #例子: -p 宿主机端口:容器端口
--name 指定容器的名字 # docker run -it --name jaden 镜像id或者名称
--link 关联另一个容器 # 了解即可
-e MYSQL_ROOT_PASSWORD #设置容器的一些属性,了解一下即可
-it #是给运行起来的这个容器分配一个终端,就可以进入到容器内部操作了

6.docker-compose

docker-compose是批量管理docker容器的工具

bash 复制代码
#linux 安装
yum install docker-compose -y
# 查看版本
docker-compose -v

配置文件解读,了这个配置文件,就可以通过docker-compose来控制多个容器了

bash 复制代码
# 注意,下面这个文件内容是严格要求格式的,多一个空格都不行,通过缩进来表示等级关系,下面的这种配置语法叫做yaml语法
version: '3'  # docker-compose.yml的文件格式版本
services:
   db:  #容器名称
     image: mysql:5.7
     restart: always  # 开机自启动的意思
     environment:
       MYSQL_ROOT_PASSWORD: 123456
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: 123456  # 和下面的WORDPRESS_DB_PASSWORD值要对应上
   wordpress:
     depends_on:
       - db
     image: wordpress:5.6  
     ports:
       - "83:80"  # 端口映射
     restart: always
     environment:
       WORDPRESS_DB_HOST: db
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: 123456

可以将 代码放入xxx.yml 文件中使用指令即可根据文件创建并运行容器。

bash 复制代码
#创建并启动
docker-compose up -d # 启动之后就可以通过浏览器访问了
#停止并删除
docker-compose down
#重启
docker-compose restart
#停止
docker-compose stop
#启动
docker-compose start

使用命令时要进入 配置文件所在的目录下执行


小白一枚,不足之处请多多指教

借鉴文章:

https://blog.csdn.net/q610376681/article/details/90483576

docker入门,这一篇就够了。-CSDN博客

相关推荐
yuguo.im13 分钟前
Docker 两大基石:Namespace 和 Cgroups
运维·docker·容器
会飞的土拨鼠呀21 分钟前
docker部署 outline(栗子云笔记)
笔记·docker·容器
Jelly-小丑鱼1 小时前
Linux搭建syslog日志服务器
linux·服务器·docker·日志服务器·syslog服务器
没有bug.的程序员2 小时前
高频IO服务优化实战指南
java·jvm·spring·容器
lisanmengmeng3 小时前
docker 方式安装部署禅道zentao(五)
运维·docker·容器
程序员老赵3 小时前
AdguardHome Docker 容器化部署指南
docker·dns
露临霜4 小时前
Docker安装nginx
nginx·docker·容器
CAFEBABE 347 小时前
安装完docker之后怎么使用
运维·docker·容器
测试人社区—小叶子7 小时前
测试开发面试高频“灵魂八问”深度解析与应答策略
网络·人工智能·测试工具·云原生·容器·面试·职场和发展
全靠bug跑8 小时前
Nacos 入门实战:部署、服务注册与发现全指南
java·spring cloud·docker·nacos