大家肯定遇到过这种场景,自己开发的程序在开发环境上运行一切正常,但是拿到生产环境上运行时却出现了很多问题。那怎么解决了?
要彻底解决这样的问题,就要介绍下我们今天的主角了,Docker!
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
Docker的安装
我是在ubuntu 20.04上进行安装的,安装的过程如下:
首先使用下面的命令进行自动安装
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
但是出现了下面的问题:
parallels@ubuntu-linux-20-04-desktop:~$ sudo dpkg --configure -a
Setting up mysql-server-8.0 (8.0.29-0ubuntu0.20.04.3) ...
Renaming removed key_buffer and myisam-recover options (if present)
mysqld will log errors to /var/log/mysql/error.log
mysqld is running as pid 5273
dpkg: error processing package mysql-server-8.0 (--configure):
installed mysql-server-8.0 package post-installation script subprocess was interrupted
Setting up curl (7.68.0-1ubuntu2.11) ...
dpkg: dependency problems prevent configuration of mysql-server:
mysql-server depends on mysql-server-8.0; however:
Package mysql-server-8.0 is not configured yet.
dpkg: error processing package mysql-server (--configure):
dependency problems - leaving unconfigured
Processing triggers for man-db (2.9.1-1) .