linux环境docker命令整理
拉取镜像等操作已省略,自行百度。
1、运行mysql镜像
docker run --name mysql20210122 -v /home/data/mysql:/var/lib/mysql/data -p 3307:3306 -e MYSQL_ROOT_PASSWORD=root -d docker.io/centos/mysql-57-centos7:latest
--name 给容器命名
-v 映射宿主机目录和容器目录,从而使得该容器运行宿主机里面的mysql数据,数据库文件示例
-p 映射宿主机端口和容器端口
-e MYSQL_ROOT_PASSWORD=root 初始化mysql容器的数据库密码,用户为默认root
-d 后面是镜像名称和版本,默认版本是latest
2、运行springboot镜像
docker run -v /home/YK/software_files/13132800942248249/ruoyi-admin.jar:/home/java.jar -p 9876:9876 -d docker.io/centos-java:latest /bin/bash java -jar /home/java.jar
-v 映射宿主机目录和容器目录,从而使得该容器运行宿主机里面的jar包
-p 映射宿主机端口和容器端口
-d 后面是镜像名称和版本,默认版本是latest
最后执行 启动命令:java -jar ***.jar,这里的jar包目录就是前面映射的容器目录
3、运行sqlserver镜像
docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=Abc123456" -u 0:0 -p 1433:1433 --name mssql -v /home/sqlserver:/var/opt/mssql -d docker.io/microsoft/mssql-server-linux:latest
-e "ACCEPT_EULA=Y" 设置此参数说明同意 SQL SERVER 使用条款 , 否则无法使用
-e "SA_PASSWORD=Abc123456" 给数据库设置密码,这里对密码有复杂度要求(大小写字母+数字),我开始设置123456,启动无法访问数据库,后来查看日志发现复杂度不符合要求。
-p 映射宿主机端口和容器端口
-v 映射宿主机目录和容器目录,从而使得该容器运行宿主机里面的sqlserver数据,数据库文件示例
-d 后面是镜像名称和版本,默认版本是latest
4、运行solr镜像
docker run --name my-solr -v /home/docker_data/solr/server/:/opt/solr/server -d -p 8983:8983 -t docker.io/solr:6.5.0
--name 给容器命名
-v 映射宿主机目录和容器目录,从而使得该容器运行宿主机里面的solr数据
-p 映射宿主机端口和容器端口
5、其他关于docker的基础命令
根据名称搜索镜像:docker search tocmat(镜像名称)
拉取镜像:docker pull tomcat(镜像名称):8.2.0(镜像版本) 默认版本是latest
查看镜像列表:docker images
查看启动的容器列表:docker ps
查看全部的容器列表:docker ps -a
进入启动的容器:docker exec -it 91063cdcb147(容器ID) /bin/bash
复制宿主机文件到容器:docker cp -a /home/ 91063cdcb147(容器ID):/home/
复制容器文件到宿主机:docker cp -a 91063cdcb147(容器ID):/home/ /home/
查看容器日志:docker logs --tail="100" 91063cdcb147(容器ID/容器名称)
启动已存在的容器:docker start 91063cdcb147(容器ID/容器名称)
关闭已启动的容器:docker stop 91063cdcb147(容器ID/容器名称)
删除容器:docker rm 91063cdcb147(容器ID/容器名称)
删除镜像:docker rmi 91063cdcb147(镜像ID/镜像名称)
继续完善!!!