标签:mamicode 表示 lov 解决 arch 定义 point roo 电脑
1.下载镜像文件mysql 默认下载最新版本源
docker pull mysql
2.docker search mysql 可以查看mysql 源
3.查看docker image :
docker images |grep mysql
4.检查容器存在情况:
docker ps
[root@hostuser dockerdir]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2d855cae15b mysql "docker-entrypoint.s…" 8 minutes ago Up 8 minutes 3306/tcp, 33060/tcp, 0.0.0.0:3307->3307/tcp mysql2
4.docker logs containername/containerid
5.创建容器并指定port,由于本机docker 已经安装了一个会出现conflinct container ,解决方案删除已经存在的mysql container根据提示 docker rm containerid
删除指令
docker rm d17fb872234815377476a92236269b01e9448de207e0a4c6e69064007ad60fa1
#启动
docker run --name mysql2 -p 3307:3307 -e MYSQL_ROOT_PASSWORD=Lzslov123! -d mysql
#进入容器
docker exec -it mysql bash
#登录mysql
mysql -u root -p
ALTER USER ‘root‘@‘localhost‘ IDENTIFIED BY ‘Lzslov123!‘;
#添加远程登录用户
CREATE USER ‘liaozesong‘@‘%‘ IDENTIFIED WITH mysql_native_password BY ‘Lzslov123!‘;
GRANT ALL PRIVILEGES ON *.* TO ‘liaozesong‘@‘%‘;
端口映射
使用命令:docker run --name container-name:tag -d -p 服务器端口:Docker 端口 image-name
--name:自定义容器名,不指定时,docker 会自动生成一个名称
-d:表示后台运行容器
image-name:指定运行的镜像名称以及 Tag
-p 表示进行服务器与 Docker 容器的端口映射,默认情况下容器中镜像占用的端口是 Docker 容器中的端口与外界是隔绝的,必须进行端口映射才能访问
服务器防火墙先开放了 8080、8090 端口,否则防火墙不开放端口的话,从其它电脑也是无法访问服务器的
然后 运行了 两个容器,容器名称分别指定为 "myTomcat1"、"myTomcat2"、两个容器中都是同一个 docker.io/tomcat:8.5.32 镜像
两个容器都指定了端口映射,分别是8080、8090 ,都会转发到 Docker 容器内部
标签:mamicode 表示 lov 解决 arch 定义 point roo 电脑
原文地址:https://www.cnblogs.com/SunshineKimi/p/11722034.html