1.查看所有的docker镜像
docker images
2.拉取docker镜像
docker pull nginx:版本
3.查看指定镜像版本可以去
Docker Hub里面搜索查看
4.通过指定镜像生成容器并且运行
docker run -d -i -t -p 8008:80 --restart=always --name nginx002 -v /usr/local/nginx/html:/usr/share/nginx/html nginx:1.12.0 /bin/bash
-d: 后台运行
--restart=always 开机启动
-v映射docker文件夹到服务器中
5.展示所有运行的容器
docker ps -a
6.进入正在运行的容器
docker exec -it 容器id /bin/bash
7.启动容器
docker start 容器Id
8.重启容器
docker restart 容器id
9.停止容器
docker stop 容器id
10.删除容器
docker rm 容器id
11.修改正在运行的容器映射文件
首先进入: /var/lib/docker/containers
找到对应的容器id,然后进入找到config.v2.json,进行修改替换
12要显示文件夹内的文件及文件夹,要使用ll -a 命令
通过以下设置即可:::
1. vim ~/.bashrc
2. 加入一行
alias ll='ls $LS_OPTIONS -l'
保存退出
3. source ~/.bashrc
13.docker中无法鼠标右键复制粘贴
cd /usr/share/vim/vim80(vim81)
找到defaults.vim 中set mouse=a 这一行
然后在=前面加一个减号 set mouse-=a
14.docker启动容器失败日志查看:
docker logs 容器id
15.制作Dockerfile镜像注意事情:
尽量不要有多个RUN命令,用&& 关联,多个RUN命令会往镜像里面添加多个层,造成镜像体积变大
Dockerfile所在的文件夹中不要有多余的文件,这样会造成构造镜像的时候把这些一起打包到镜像内,(也可以通过配置忽略哪些文件不把他打包到镜像中)
16.docker传递参数启动springBoo项目
①首先编写Dockerfile文件
标准jdk8会打包后体积大,兼容性强,比较常用
# 基础镜像使用java
FROM java:8
# VOLUME 指定了临时文件目录为/tmp
# 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
VOLUME /tmp
# 将jar包添加到容器中并更名为app.jar
ADD xc-cloud-register-1.0-SNAPSHOT.jar app.jar
# 运行jar包
RUN bash -c 'touch /app.jar'
#为了缩短Tomcat启动时间,添加一个系统属性指向 “/dev/urandom” 作为 Entropy Source
ENV JAVA_OPTS=""
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]
alpine版本的,打包体积小,安全性强,兼容性稍微差一些
# 基础镜像使用java
#FROM java:8
FROM openjdk:8-jdk-alpine
# VOLUME 指定了临时文件目录为/tmp
# 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
VOLUME /tmp
# 将jar包添加到容器中并更名为app.jar
ADD xc-cloud-register-1.0-SNAPSHOT.jar app.jar
# 安装bash命令并且运行jar包
RUN apk add --no-cache --upgrade bash && bash -c 'touch /app.jar'
#为了缩短Tomcat启动时间,添加一个系统属性指向 “/dev/urandom” 作为 Entropy Source
ENV JAVA_OPTS=""
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]
②然后将文件和jar包放在同一个文件夹下
③ 打包成镜像
docker build -t 镜像名称 .
注意后面有一个. 这里作用是指当前路径
④根据刚才构建的镜像,启动容器
docker run --name eureka -it -v /server/register/xc-cloud-register-1.0-SNAPSHOT.jar:/app.jar -v /server/register/logs:/logs -d -p 8888:8888 --restart=always -e "JAVA_OPTS=-server -Xms256m -Xmx512m" eureka
⑤后续更新代码,只需要在映射的路径下面把jar包替换就可以,然后再重启容器
17.docker迁移:
推荐镜像迁移
docker save 镜像名称 > 镜像压缩文件.tar
docker load < 镜像压缩文件.tar
此外还有容器迁移,迁移数据卷,整个docker迁移方案.
更多关于docker命令可以看:Docker 命令大全 | 菜鸟教程