Docker安装与部署,将jar制作镜像并启动

Docker 要求 CentOS 系统内核版本在 3.10 以上。

  1. 通过 uname -r 查看内核版本
uname -r
  1. 使用root权限登录CentOS,确保yum包更新到最新
yum -y update
  1. 安装需要的软件包
yum install -y yum-utils device-mapper-persistent-data lvm2
  1. 设置yum源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
  1. 查看仓库中所有docker版本,选择安装
yum list docker-ce --showduplicates | sort -r
  1. 安装docker
sudo yum install -y docker-ce 

8.启动并加入开机启动

systemctl start docker
systemctl enable docker
  1. 验证安装是否成功
docker version

配置阿里镜像加速

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
 {
   "exec-opts": ["native.cgroupdriver=systemd"],
   "registry-mirrors": ["https://19h5n0wc.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

搜索镜像

docker search java

下载Java8

docker pull java:8

删除镜像

docker rmi java
或
docker rmi 镜像ID

下载镜像并启动绑定端口

docker run -p 81:80 nginx  #下载nginx镜像并运行,宿主机端口81,docker端口80 

查看当前运行的应用

docker ps

后台启动镜像

docker run -d -p 81:80 nginx

构建自己的docker镜像
创建存储jar的目录

 mkdir /usr/local/dockerapp

将jar上传到目录,在jar所在目录创建Dockerfile的文件,并添加以下内容

##指定java8环境镜像
FROM java:8
##复制文件到容器app-springboot
ADD docker-springboot-0.0.1.jar /app-springboot.jar
##声明启动端口
EXPOSE 8080
##配置容器启动后执行命令
ENTRYPOINT ["java","-jar","/app-springboot.jar"]

使用docker build命令构建镜像

docker build -t mall-inter-web .

启动

docker run -p 8080:8080 docker-springboot

进入容器

docker container exec -it 容器id /bin/bash

查看容器的安装目录

/容器id/etc/nginx

默认情况安装在 容器的etc目录

修改软件的配置文件方式(不建议进到容器修改),使用挂载的方式 -v。

docker run --name nginx -d -p 80:80 -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/logs:/var/log/nginx -d docker.io/nginx

docker安装MySQL
查看版本

docker search mysql

下载mysql5.7版本
docker pull mysql:5.7
创建mysql容器

docker create --name mysql  -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 mysql:5.7 

启动容器

docker start mysql

进入容器

docker exec -it mysql bash

在运行docker容器时,可以加如下参数来保证每次docker服务重启后,容器也自动重启:

docker run ****** --restart=always

如果已经启动了,则可以使用如下命令:

docker update --restart=always <CONTAINER ID>

其他命令

查看容器详细信息

docker inspect 容器ID

docker镜像迁移

  1. 把当前的容器提交为一个镜像,如果已经存在镜像可以跳过
docker commit 容器名 镜像名
  1. 将镜像存为tar文件
docker save 镜像名 >备份文件.tar
  1. 将备份文件.tar 复制到目的主机下
[localhost$ ~]scp nginx.tar root@192.X.X.X:/data
  1. 将 备份文件.tar恢复为镜像 ,具体用法请见docker load --help
docker load -i 备份文件.tar
  1. 根据镜像重新运行起容器,建议写好sh命令,直接拷贝sh启动
docker run  -p 81:80 --name='容器名' -d -镜像名
©️2020 CSDN 皮肤主题: 黑客帝国 设计师:上身试试 返回首页