Docker

本文详细介绍Docker的安装、配置及基本操作,包括容器的运行、停止、删除,镜像的下载、制作、保存等。同时讲解如何配置Docker以支持远程连接和持续集成,以及在Maven项目中集成Docker。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

docker的作用:
是一个开源的应用容器引擎
可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化
linux上的虚拟机。

jenkins与docker相同的软件。

安装docker虚拟机
yum -y install docker

doker仓库
hub.docker.com

docker安装好之后默认不启动,启动密令如下:
service docker start

默认开启linux是启动docker密令如下:
chkconfig docker on

查看docker里面有没有镜像
docker images

查看docker仓库里面有没有centos(iso)镜像包
docker search centos

OFFICIAL表示是不是官网的iso镜像包【ok】表示是官方的

下载centos(iso)镜像包
docker pull centos

配置国内docker私服
vi /etc/docker/daemon.json
{
“registry-mirrors”: [“https://registry.docker-cn.com“]
}

配置完之后执行下面的命令,以使docker的配置文件生效
systemctl daemon-reload
systemctl restart docker

删除iso镜像删除确定一下iso下有没有启动的容器
docker rmi iso的ID

运行容器centos
docker run centos

查看容器有没有运行
docker ps -a

STATUS表示容器的状态
Exited:表示没开启
Up:表示启动

创建容器进入容器里面启动容器
docker run -it centos /bin/bash

创建容器在宿主里开启容器
docker run -itd centos /bin/bash

查看容器的ip地址要在宿主里面查看,命令如下:容器关闭时无法获取ip,开启时可获取
docker inspect 容器的ID | grep IP

开启容器
docker start 容器的ID

进入容器 -it 与 /bin/bash 是一同使用的缺一不可
docker exec -it 容器的ID /bin/bash

退出容器
eixt

删除容器
docker rm 容器ID

强制删除容器
docker rm -f 容器ID

使用run -it 命令启动容器退出后会关机
使用run -itd 命令启动容器退出后不会关机
使用docker start 命令启动容器退出后不会关机

find 查找目录

nginx.conf静动分离
location ~* ^(.*).jpg|png|gif|bmp|js$ {

root html;

index  index.html index.htm;

}

location / {

proxy_pass http://backend;

}

重新启动nginx
nginx: [alert] kill(80898, 1) failed (3: No such process)

etc nginx

docker 复制文件到哪个地方
docker cp mynginx:/etc/nginx/conf.d/default.conf /

curl http… 访问某个IP地址

docker run --name mynginx -v /mynginx:/usr/share/nginx/html:rw -d -p 8080:80 nginx 端口映射 并且创建容器
docker run --net host -d --name mynginx -v /mynginx:/usr/share/nginx/html:rw nginx 创建容器 不用做端口映射
–net host 绑定宿主ip 端口 --name 容器名称 -v 目录共享 :rw 权限 -d 后台运行 仅主机模式

hub.docker.com 镜像网站
www.runoob.com 菜鸟教程

docker run --net host --name mariadb -e MYSQL_ROOT_PASSWORD=123456 -d mariadb:5.5.60
redis-cli redis启动

netstat -aon | grep 8080 查看端口有没有占用
netstat -nlp | grep 8080
kill -9 进程id 强制中断该进程
docker commit 镜像 容器名:版本号 制作镜像
docker save 镜像名 -o 文件名 把镜像用文件保存
docker load -i 用文件格式储存镜像的文件名 还原镜像
docker build -t tomcat2:111 :Dockerfile 文件形式创建镜像
Dockerfile:
FROM tomcat
COPY ./sessionTest.war /usr/local/tomcat/webapps

持续集成:
1.打开远程连接默认docker服务启动 文件(/usr/lib/systemd/system/docker.service)编辑文件
在ExecStart后面 添加一行(表示启动2375端口 用于监听远程操作)
-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
2.改了文件需要重新加载服务 systemctl daemon-reload 和重启docker服务 service docker restart

echo %环境变量名% 查询环境变量能不能连接

Maven项目持续集成

1.打开远程连接默认docker服务启动 文件(/usr/lib/systemd/system/docker.service)编辑文件
在ExecStart后面 添加一行(表示启动2375端口 用于监听远程操作)
-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock \

2.改了文件需要重新加载服务 systemctl daemon-reload 和重启docker服务 service docker restart

3.需要在pom.xml配置

st打包好后的包名


com.spotify
dockerfile-maven-plugin
1.4.0

st文件名
1版本号

<JAR_FILE>target/st.war</JAR_FILE>war包名




4.Dockerfile 文件 放在项目里
FROM tomcat
COPY target/st.war /usr/local/tomcat/webapps

5.需要配置环境变量
变量名:DOCKER_HOST
变量值:tcp://192.168.157.131:2375 ip地址是后台虚拟机的地址

mvn package 项目打包

mvn clean package dockerfile:build -DskipTests 执行生成镜像

6.打包完成!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值