安装docker
我个人是安装的面板,安装面板的时候就安装上了docker,并且面板中也自带docker镜像源,面板地址:1Panel - 现代化、开源的 Linux 服务器运维管理面板。
在服务器中输入这个命令,直接安装,无脑下一步就行
curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && bash quick_start.sh
安装redis
如果不确定要安装那个版本可以直接输入docker search 镜像名
搜索,比如我搜索redis:docker search redis
可以看到第一个搜索收藏最多,那么直接docker pull redis
下载镜像就可以了。
等待镜像拉取完之后直接docker run --restart=always --privileged=true -p 6379:6379 --name redis -d redis
就行,因为redis不需要持久化就不做挂载了。
安装完成之后用docker ps
命令查询一下有哪些容器正在运行,如果有redis就说明没问题
redis容器正在运行,我们远程连接一下看看有没有问题
卸载redis
先查询docker运行的容器docker ps
这里获取到的容器的id,下面运行docker rm -f 容器id
就能删除容器了,这里是docker rm -f c39e8d7b6759
可以看到已经删除容器了,接下来继续删除镜像docker images
查看有哪些镜像,然后执行docker rmi -f 镜像id
来删除镜像
可以看到没有redis镜像了,到这里就卸载完成了
安装MySQL
安装MySQL的步骤和安装redis的步骤大体是一样的,有一点区别就是redis不需要持久化而MySQL需要持久化,这里在启动容器的时候会体现出来。因为我MySQL本来就有一个数据库所以我直接卸载然后安装,看看重新安装后数据还在不在,卸载步骤在文章后面
这里咱们省略一些步骤,因为我很明确我要安装的版本是8.2.0,所以我就不需要执行docker search mysql
命令来搜索镜像和docker pull mysql
命令来拉取镜像,直接输入启动容器的命令,他会自动拉取镜像
docker run -p 3306:3306 --restart=always --name mysql -v /docker/mysql/mysql-files:/var/lib/mysql-files -v /docker/mysql/log:/var/log/mysql -v /docker/mysql/data:/var/lib/mysql -v /docker/mysql/conf:/etc/mysql/mysql.conf.d -e MYSQL_ROOT_PASSWORD=123456 -e TZ=Asia/Shanghai -d mysql:8.2.0
可以看到我并没有拉取镜像他运行容器的时候自动帮我拉取镜像了
远程访问一下 MySQL看看是不是持久化
可以看到卸载后重新安装数据还在
卸载MySQL
所有的卸载都是一样的,上面提到了MySQL持久化,这里我们就安装MySQL后添加一些数据再吧MySQL给卸载了然后再安装MySQL数据,看看数据还在不在。卸载过程还是那几步。
查看运行的容器:docker ps
,删除容器:docker rm -f 容器id
,查看所有容器检查是否删除:docker ps -a
查看镜像:docker images
,删除镜像:docker rmi -f 镜像id
,检查镜像是否被删除:docker images
构建Java项目的镜像
先说明我本来是看芋道的文档来的,后来感觉这样更简单一点,因为我也就会那几个docker命令。
这里我是在csdn上面找了一篇文档照着改的:菜鸟的IDEA使用Docker插件_idea可以通过可视化的方式拉取镜像,不用自己去敲命令-CSDN博客
我结合芋道和这篇文档自己改着玩的,看到不足请指出
首先先连接docker,这里我选择的是ssh连接,感觉开放端口太危险了
然后会在左边看到docker,如果没看到docker单独列出来那就在service哪里
然后看芋道的docker部署文档,要在服务器中创建文件夹上传jar包,我忽略这一步了,直接去idea中打的jar包,然后执行的dockerfile里面的命令
打包之前先点击跳过测试,不然会报错
这里有一个坑,就是MySQL和redis的ip地址不要写127.0.0.1,要写公网ip地址
打完jar之后我先吧之前的容器和镜像删除一下,重新构建镜像。构建镜像之前注意修改配置
然后我们构建镜像,他会提示输入密码,正常输入就行
输入docker run --name yudao -p 48088:48088 -d 镜像id
运行容器,绑定端口
输入docker logs yudao
查看日志,检查是否启动成功
在浏览器访问端口
访问成功
想比较插件或者面板我更喜欢命令行,因为我刚学docker没几天都是自己瞎玩的,遇到错误请指出,遇到相关的文档欢迎分享