一、docker 安装
- 启动容器
sudo docker start 831316f3ca61
- 查看容器
sudo docker ps -a
- 进入容器
sudo doker exec -it cf49e8f51a31 /bin/bash
- 删除容器
sudo docker rm 831316f3ca61
- 根据Dockerfile 创建镜像
sudo docker build -t solidifi .
- 运行某个容器
sudo docker run -it solidifi
二、docker安装mysql并修改远程登陆权限
-
安装mysql:
1.查看版本docker search mysql
2.拉取mysql镜像docker pull mysql:latest
3.查看已安装的mysql镜像docker images
4.运行mysql容器docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
5.查看是否安装成功docker ps
-
修改连接权限:
1.查找CONTAINER ID #docker ps
2.使用CONTAINER ID进入容器命令 #doker exec -it cf49e8f51a31 /bin/bash
3.登录mysql #mysql -u root -p
4查看MySQL版本号select version();
5.修改远程连接权限alter user 'root'@'%' identified with mysql_native_password by '123456';
三、docker run 与docker exec 区别
-
docker run
:用于创建和运行一个新的容器实例。它接收一个镜像作为参数,并可以使用各种选项来配置容器的行为,例如指定容器名称、端口映射、环境变量、卷挂载等。
docker run
在容器启动时执行指定的命令,并在容器中运行一个新的进程。通常用于启动一个全新的容器实例。
示例用法:docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
-
docker exec
:用于在正在运行的容器中执行额外的命令。它需要指定正在运行的容器的名称或ID,并可以在容器内部执行指定的命令。
docker exec
在容器运行时向容器内部添加一个新的进程。通常用于在运行中的容器中执行特定的命令或访问容器的交互式终端。
示例用法:docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
-
综上所述,
docker run 用于创建和启动新的容器实例
,而docker exec 用于在正在运行的容器中执行命令
。在创建容器时,通常会使用 docker run 来启动容器,而在容器运行时需要进入容器执行特定命令或与容器进行交互时,则使用 docker exec。两者在不同的场景中扮演不同的角色,但都是管理和操作容器的重要命令。