25.3、Docker 安装服务

我们可以通过Docker非常方便快捷的安装各种我们所需的服务。

安装 Microsoft SQL Server

仓库地址

Docker Hub 文档:https://hub.docker.com/_/microsoft-mssql-server

微软官方文档:https://docs.microsoft.com/zh-cn/sql/linux/quickstart-install-connect-docker?view=sql-server-2017&pivots=cs1-bash

安装脚本

docker pull mcr.microsoft.com/mssql/server

运行脚本

[root@localhost ~]# docker run --name first-mssql -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=APJ.com!q1w2e3' -e 'MSSQL_PID=Express' -p 1433:1433 -d mcr.microsoft.com/mssql/server
38c3504d5c715e71e0912f85f084657f5a6696e51ed8c1309d87137ea77ab9db
[root@localhost ~]# docker container ps
CONTAINER ID        IMAGE                            COMMAND                  CREATED             STATUS              PORTS                    NAMES
38c3504d5c71        mcr.microsoft.com/mssql/server   "/opt/mssql/bin/sqls…"   4 seconds ago       Up 2 seconds        0.0.0.0:1433->1433/tcp   first-mssql
[root@localhost ~]#

进入服务环境

docker exec -it container_id/name bash

连接数据库

命令方式

==注:mssql执行sql语句需要调用 go 关键字才能执行== 😳

连接工具

查看服务信息

docker inspect container_id/name

通过该命令,我们可以查看当前运行服务所有信息,类似我们的电脑的系统参数。

查看服务日志

docker logs container_id/name

通常我们使用该命令查看服务运行错误日志

常见错误

  • 内存不足

mssql 要求内存必须大于 ==3.5G== 😳

  • 密码强度

mssql 要求密码必须至少为 8 个字符长,且包含三个以下四种字符集的字符:大写字母、 小写字母、 十进制数字和符号 😳

通过 docker logs container_id/name 可以查看具体错误日志

实现多开

Docker 环境中使用本地(宿主)数据库

在docker环境中,如果想访问宿主的服务,比如mssqlredismysql等等就不能使用localhost,==localhost指的是docker环境中的地址,并非我们宿主的地址==,所以docker提供了其他模式来访问本机(宿主)的localhost

  • Mac/Windows

host.docker.internal,这个就相当于我们的以前的localhost

  • Linux

安装 Mysql

安装脚本

运行服务

连接数据库

命令方式

连接工具

查看服务信息

安装 Nginx

安装脚本

运行服务

查看Nginx

查看Nginx 配置信息

查看Nginx 配置文件及目录信息

  • 配置文件存放路径:/etc/nginx/nginx.conf

  • 虚拟主机存放路径:/etc/nginx/conf.d

  • 日志存放路径:/var/log/nginx

  • 静态资源存放路径:/usr/share/nginx/html

编辑服务中某个文件

访问容器某个文件

docker cp container_id/name:路径

最后更新于

这有帮助吗?