win10安装docker: win10系统安装docker (2022年最新填坑)
拉取镜像:docker pull image-name // 到docker hub选择合适的镜像
查看镜像:docker images
查看容器:docker ps -a
查看运行中的容器:docker ps
删除容器:docker rm id
删除镜像: docker rmi id
启动容器:docker start id
进入容器:docker exec -it id /bin/bash
退出容器:ctrl+P+Q
停止容器:docker stop container-id
容器保存为镜像:docker commit container-id image-name:tag
运行容器+映射端口:docker run -it -p 8080:8080 image-name
重启容器: docker restart container-d
建立镜像:在文件夹中新建Dockerfile,
Dockerfile内容:
FROM ubuntu:v2
ADD xxx.jar app.jar
ENV PATH "$PATH:/usr/lib/jvm/jdk1.8.0_341/jre/lib:/usr/lib/jvm/jdk1.8.0_341/bin"
EXPOSE 8080
RUN sh -c 'touch /app.jar'
ENTRYPOINT ["java", "-jar", "/app.jar"]
执行:
docker build -t image-name .
根据镜像新建容器:
docker run -it -d --name container-name image-name
复制文件到容器中:
docker cp foo.txt mycontainer:/foo.txt
保存镜像到本地:
docker save -o image.tar image-id
本地进行推到hub:
1. 登录 docker login
2. docker tag image-name username/name //不写用户名的话会报错denied. 用户名同docker用户名
docker push username/name
遇到的问题:
1.部署中,不能执行jar项目
原因1:不能用FROM引入多个环境,否则只能感知到最后一个环境
解决:拉取ubuntu环境,进入容器内,进一步安装java等环境
之后尝试,仍然不能运行jar程序
原因:设在容器内~/.bashrc和/etc/profile中的路径没有反映在容器的path上
解决:在Dockerfile中显示设置: ENV PATH "$PATH:/your_path"