1.编写Dockerfile文件(javaEE)
# 使用 Java 运行时环境作为基础镜像
FROM openjdk:8-jdk-alpine
# 将 jar 文件添加到容器中
ADD target/SBoot-ssmp-0.0.1-SNAPSHOT.jar app.jar
# 运行 jar 文件
ENTRYPOINT ["java","-jar","/app.jar"]
放在项目或者模块的根目录下
2.项目打包
使用构建工具把项目编译和打成jre包,确定jre包的存放路径
3.进行镜像的构建
从Windows PowerShell中进入存放包的路径执行如下的命令
alt+f +s(在windows文件中快速进入powershell)
构建镜像
docker build -t {project name} .
上传
#登录
docker login
#标记镜像
docker tag {project name} name/{project name} #name为docker账户
#上传镜像到云端
docker push name/{project name}
在服务器中安装docke
在Alibaba Cloud Linux上安装Docker
-
安装必要的软件包:
首先,安装一些必要的软件包,这些软件包将帮助你通过HTTPS使用仓库:
sudo yum install -y yum-utils
-
设置Docker仓库:
接下来,添加Docker的官方仓库到你的系统:
bashCopy code sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
-
安装Docker Engine:
现在,安装Docker Engine:
bashCopy code sudo yum install docker-ce docker-ce-cli containerd.io
-
启动Docker服务:
安装完成后,启动Docker服务:
bashCopy code sudo systemctl start docker
-
验证Docker安装:
为了验证Docker是否正确安装,可以运行一个测试镜像:
bashCopy code sudo docker run hello-world
这个命令会下载一个测试镜像并在容器中运行。如果安装正确,你应该看到一条消息表示你的Docker安装是成功的。
-
设置Docker开机自启 (可选):
如果你希望Docker在系统启动时自动运行,可以使用以下命令:
bashCopy code sudo systemctl enable docker
从服务器拉起云端镜像
docker pull name/project name
docker run -d -p 8080:8080 name/project name #前8080为主机端口,后一个为容器端口
-
查看正在运行的容器:
bashCopy code docker ps
这个命令会列出所有当前正在运行的容器。
-
查看所有容器(包括停止的):
bashCopy code docker ps -a
-a
或--all
选项会显示所有容器,无论它们的状态如何。 -
查看最近创建的容器:
bashCopy code docker ps -l
删除单个镜像:
docker rmi <镜像ID或名称>
停止容器:
docker stop <容器ID或名称>
docker部署mysql
1.拉取镜像
docker pull mysql:5.7
2.创建容器
docker run -d -p 3306:3306 \
--name mysql \
-v /opt/mysql/log:/var/log/mysql \
-v /opt/mysql/data:/var/lib/mysql \
-v /opt/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
mysql:5.7
#确保conf目录下有子目录 conf.d和mysql.conf.d 否则会出现容器运行错误的情况
3.通过容器中的客户端访问数据库
docker exec -it mysql mysql -uroot -proot
之后就可以执行mysql的命令了
数据库都放在/opt/mysql/data路径下
4.在物理机上访问dockerz中的mysql数据库
安装客户端
yum -y install mariadb
连接语句
mysql -h 47.115.221.108 -uroot -proot -P3306
docker命令
docker命令一键启动所有暂停的容器
docker ps -aq -f status=exited | xargs docker start