1.docker images:
查看docker中的镜像
2.docker pull mysql 拉取镜像
(小插曲:MySQL5.7 不适用arm solution:docker run --platform linux/x86_64 mysql)
3.dockerfile就是指定应用是怎么打包的
4.docker run --name mysql-data -v /data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD="123456" -d mysql:5.7
-v的意思就是把容器中的目录和宿主机中的目录做映射,我们只要把容器中mysql的数据目录映射到本地,将来就算这个容器被删除了,那么数据还是在的。
MYSQL_ROOT_PASSWORD="123456"这个就是你设置的docker中的mysql的密码。
5.如何制作dockerfile:
from 基础镜像
EntryPoint ["java","-jar","/app.jar"] 这个就是启动命令
dockerfile的详细命令:
FROM golang:alpine
# 为我们的镜像设置必要的环境变量
ENV GO111MODULE=on \
CGO_ENABLED=0 \
GOOS=linux \
GOARCH=amd64
# 移动到工作目录:/build
WORKDIR /build
# 将代码复制到容器中
COPY . .
# 将我们的代码编译成二进制可执行文件app
RUN go build -o app .
# 移动到用于存放生成的二进制文件的 /dist 目录
WORKDIR /dist
# 将二进制文件从 /build 目录复制到这里
RUN cp /build/app .
# 声明服务端口
EXPOSE 8889
# 启动容器时运行的命令
CMD ["/dist/app"]
6. 生成镜像:
将当前所有的代码 生成 镜像myseckill:v2
docker build -t myseckill:v2 .
7.运行镜像:
docker run -d -p 8889:8889 myseckill:v2
-p就是端口映射 在浏览器中输入 127.0.0.1:8889
-d是后台启动
8.docker ps 查看运行的容器:
会生成容器ID
9.然后
docker exec -it b3fdafa94f56 /bin/bash
进入到容器内
10.EXPOSE 8081这个是用来暴露端口的
2.查看docker容器的网络命令:
docker network inspect bridge
返回下面的信息:
5.14总结
参考文章:
1.docker 容器间的通信方式:
Docker容器间通信方法 - 掘金
2.尚硅谷IT教程之Docker与微服务时间 (16h)
https://www.youtube.com/watch?v=Cmy2afG_XOE&list=PLmOn9nNkQxJFtOGw9fsoLHgtCxcki7TtK
3.如何制作dockerfile (重要 workable):
MySQL
https://juejin.cn/post/6944940786970525727
docker启动mysql 并挂在目录:
Docker 启动mysql并挂载目录_安小然然的博客-CSDN博客_docker 启动mysql并挂载
转存失败重新上传取消
转存失败重新上传取消
转存失败重新上传取消
转存失败重新上传取消
转存失败重新上传取消