docker基础

Docker

是一个开源的应用容器引擎,可以将开发应用以及依赖打包到一个镜像中,发布到linux操作系统机器上或wiindows操作系统机器上。

Docker被翻译为搬运工,意思是操作系统中的应用及依赖的收纳盒,可以很方便的将其中的应用获取部署到操作系统中,并且解决了软件跨环境迁移部署的问题。

Docker的功能有对应用的打包、分发、部署。

打包:将所需要的应用和依赖打包起来放进镜像中

分发:将镜像中的应用分发到拥有linux或windows等支持docker使用的操作系统上,或是传到镜像仓库中

部署:可以方便地进行安装,只需要输入一行指令即可

docker架构

docker使用客户端-服务器架构。 Docker客户端(client) 与 守护进程(Docker daemon)进行对话,该守 护进程 完成了构建、运行和分发 Docker 容器的繁重工作。

仓库(Repository):是docker提供的一个用来保存镜像的仓库. 镜像(Image):镜像就是一个可执行的包,用来创建容器,docker中每一个软件都是一个镜像. 容器(Container):容器是镜像的实体。容器可以被创建、启动、停止、删除、暂停等。

docker命令

docker命令分两大类:镜像操作命令,容器操作命令

镜像操作命令

1.从镜像仓库下载到本地

docker pull

例:docker pull mysql:8.0

2.查看本地镜像

docker images

3.删除docker镜像

docker rm 镜像名/镜像id

4.从docker中保存镜像到本地

docker save 镜像名 > 镜像名.jar

5.从本地上传镜像到docker

docker load 镜像名 < 镜像名.jar

容器操作命令

1.通过镜像安装

docker run 镜像名

2.查看容器

docker ps -a

3.启动容器

docker start 容器名

4.关闭容器

docker stop 容器名

5.删除容器

docker rm 容器名

6.查看容器日志

docker logs 容器名

安装MySql

1.下载mysql镜像

在线下载 docker pull mysql:8.0

加载本地镜像 docker load

2.安装mysql容器

例如:账号为root 密码为root:

docker run 参数

docker run -d -p 3306:3306 \

--name mysql \

--restart=always \

--privileged=true \

-e TZ=Asia/Shanghai \

-e MYSQL_ROOT_PASSWORD=root \

mysql:8.0

进入到容器

docker exec -it 容器名/容器id bash

登录mysql

mysql -u账号 -pr密码

mysql -uroot -proot

若是要与数据库建立连接,登录前需要执行:

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';

mysql_native_password是MySQL数据库中的一种身份验证插件,它负责处理用户登录时的密码验证。这个插件使用MySQL自己的密码哈希算法,将用户提供的密码与存储在数据库中的密码哈希进行比较,以验证用户的身份。

mysql_native_password身份验证插件在MySQL数据库的安全性中扮演着重要角色。它通过哈希和加密用户密码,确保只有知道正确密码的用户才能访问数据库。这有助于防止未授权的访问和数据泄露。

退出:exit

相关推荐
wb18922 分钟前
LVS的集群技术和分布式
运维·笔记·分布式·云计算·lvs
云和数据.ChenGuang3 小时前
关闭 GitLab 升级提示的详细方法
运维·自动化·gitlab·es运维
007php0073 小时前
服务器上PHP环境安装与更新版本和扩展(安装PHP、Nginx、Redis、Swoole和OPcache)
运维·服务器·后端·nginx·golang·测试用例·php
潘yi.4 小时前
Kubernetes高级调度1
云原生·容器·kubernetes
saynaihe9 小时前
ubuntu 22.04 anaconda comfyui安装
linux·运维·服务器·ubuntu
企鹅与蟒蛇9 小时前
Ubuntu-25.04 Wayland桌面环境安装Anaconda3之后无法启动anaconda-navigator问题解决
linux·运维·python·ubuntu·anaconda
小蜜蜂爱编程9 小时前
ubuntu透网方案
运维·服务器·ubuntu
AI视觉网奇10 小时前
git 访问 github
运维·开发语言·docker
G_whang10 小时前
jenkins使用Jenkinsfile部署springboot+docker项目
spring boot·docker·jenkins
头发那是一根不剩了10 小时前
nginx:SSL_CTX_use_PrivateKey failed
运维·服务器