docker应用记录总结

一、前言

docker这类部署工具,久而久之不使用非常容易忘记,甚至连操作命令都容易忘记。网上也有比较全的docker使用教程。这里做一个记录总结,纯属是温故知新。

二、docker部署应用

1、docker印象

docker首先让我想到的是是虚拟化技术,沙箱,集装箱。因为所有的docker教程配的插图都是一头鲸鱼背驼这一大堆集装箱。

意思就是将部署的应用部署到集装箱,集装箱是可以无缝移植的同时也是隔离的。

2、集装箱里有什么

docker里装的是镜像和容器,其中镜像就是安装的软件本身的文件集合,容器是镜像的一部分,或者可以说运行的容器是镜像的进程。

3、安装docker

使用docker首先得安装docker

docker是C/S架构,有客户端和服务端

Client: Docker Engine -- Community version: 20.10.12

Server: Docker Engine -- Community version: 20.10.12

在linux服务器环境下可以使用yum的方式安装docker

(1)用yum拉取阿里云镜像:

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

(2) yum安装:

yum install docker-ce

(3)查看docker版本:

docker version

(4)启动docker:

systemctl start docker

(5)设置docker开机自启

systemctl enable docker

三、如何将应用程序部署到docker

例子:

(1)java代码打成可以运行的jar包

(2)Dockerfile文件的制作

使用docker部署。在/home/docker/apps路径下创建"eureka"文件夹,并存放一个ctg-eureka.jar的镜像文件和构建镜像的Dockerfile文本文件。eureka.jar文件可使用别的服务器同目录下的ctg-eureka.jar文件。

Dockerfile文件的内容:

FROM java:8

VOLUME /tmp

ADD ctg-eureka.jar ctg-eureka.jar

EXPOSE 8761

ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/ctg-eureka.jar"]

(3)加载镜像

在/home/docker/script路径下创建一个脚本文件"eureka.sh",内容为:

docker run --name ctg-eureka -d -p 8761:8761 ctg-eureka

通过脚本文件eureka.sh运行,脚本文件的运行需授予权限,在文件目录下命令:

chmod 755 eureka.sh

运行脚本命令:./ eureka.sh

四、docker常用维护命令

1.查看docker镜像: docker images

2.查看docker正在运行容器: docker ps

3.查看docker里的容器: docker ps -a

启停应用命令例子:

1.启动: docker start ctg-eureka

2.重启: docker restart ctg-eureka

3.停止: docker stop ctg-eureka

相关推荐
莹雨潇潇5 分钟前
Docker 快速入门(Ubuntu版)
java·前端·docker·容器
Pythonliu730 分钟前
茴香豆 + Qwen-7B-Chat-Int8
linux·运维·服务器
你疯了抱抱我31 分钟前
【RockyLinux 9.4】安装 NVIDIA 驱动,改变分辨率,避坑版本。(CentOS 系列也能用)
linux·运维·centos
tangdou3690986551 小时前
1分钟搞懂K8S中的NodeSelector
云原生·容器·kubernetes
小O_好好学2 小时前
CentOS 7文件系统
linux·运维·centos
哲伦贼稳妥3 小时前
一天认识一个硬件之机房地板
运维·网络·经验分享·其他
john_hjy3 小时前
11. 异步编程
运维·服务器·javascript
x晕x3 小时前
Linux dlsym符号查找疑惑分析
linux·运维·服务器
活跃的煤矿打工人3 小时前
【星海saul随笔】Ubuntu基础知识
linux·运维·ubuntu
tangdou3690986554 小时前
Docker系列-5种方案超详细讲解docker数据存储持久化(volume,bind mounts,NFS等)
docker·容器