安装要求
-
Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。通过 uname -r 命令查看你当前的内核版本
uname -r
docker 命令
-
查询已安装的容器
docker images -
查询正在运行的docker
docker ps -
运行容器
docker run 容器名称 -
停止容器
docker stop 容器名称
更新yum
-
使用 root 权限登录 Centos。确保 yum 包更新到最新。
sudo yum update
-
卸载旧版本(如果安装过旧版本的话)
sudo yum remove docker docker-common docker-selinux docker-engine
-
安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
-
设置yum源
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
安装docker
-
查询仓库中所有的docker版本
yum list docker-ce --showduplicates | sort -r
-
安装docker
sudo yum install # 例如:sudo yum install docker-ce-17.12.0.ce
-
启动并加入开机启动
sudo systemctl start docker
sudo systemctl enable docker -
查询docker版本
docker version
安装mysql指定版本
-
查询仓库中mysql版本 https://hub.docker.com/_/mysql?tab=tags
-
安装mysql
docker pull mysql:5.7 -
创建MySQL容器并启动
docker run -di --name=mymysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
–name 给容器起一个别名mymysql(可随意取)
-p 代表端口映射,格式为 宿主机映射端口:容器运行端口
-e 代表添加环境变量 MYSQL_ROOT_PASSWORD 是root用户的登陆密码 -
查询运行的容器
docker ps
安装指定版本的Redis
-
查询所有的Redis版本
docker search redis
-
拉取最新redis镜像
docker pull redis
-
启动Redis
docker run -d -p 6379:6379 --name myRedis redis:latest
-
进入Redis-cli
docker exec -it myRedis redis-cli
部署springboot项目
-
在Linux新建文件夹(名字自己随便取)
mkdir back
-
进入新建的文件夹
cd back
-
copy spring boot jar 包至文件夹下
scp /Users/zhanglijie/Desktop/work/md_backend/target/modou.jar root@129.211.89.156:/javaback/
-
在当前文件夹下创建Dockerfile文件
# 该镜像需要依赖的基础镜像 FROM java:8 # 将当前目录下的jar包复制到docker容器的/目录下 ADD modou.jar /modou.jar # 运行过程中创建一个mall-tiny-docker-file.jar文件 RUN bash -c 'touch /manage_analysis.jar' # 声明服务运行在8081端口 EXPOSE 8081 # 指定docker容器启动时运行jar包 ENTRYPOINT ["java", "-jar","/modou.jar"] # 指定维护者的名字 MAINTAINER zhanglijie
-
构建镜像(在当前文件下执行)
docker build -t mydocker .
mydocker 为镜像名称:可以自己随意取
-
运行镜像
docker run -d -p 4567:8080 mydocker
注意端口号顺序,4567是指在doucker暴露在外部的端口,8080是指docker里面的项目的端口
查询spring jar 日志
先停止mydocker ,然后执行docker run -p 8081:8081 mydocker
访问容器
docker exec -it 1ed59d08f032 bash
1ed59d08f032为容器Id
执行:curl localhost:8083/modou/user/login