小编use*_*406的帖子

无法连接到 MySQL:没有这样的文件或目录

我写了这个docker-compose 项目。该泊坞窗,compose.yml如下所示:

version: '3.1'

services:
  db:
    image: mysql
    restart: always
    environment:
      - MYSQL_DATABASE=mgsv
      - MYSQL_USER=mgsv_user
      - MYSQL_PASSWORD=mgsvpass
      - MYSQL_ROOT_PASSWORD=mysql123
    volumes:
      - ./mysql:/docker-entrypoint-initdb.d

  www:
    build: ./mGSV 
    restart: always
    ports:
      - 8080:80
Run Code Online (Sandbox Code Playgroud)

index.php文件 看起来是这样的:

<?php
echo "Hello World!";
//mysqli_connect("localhost","my_user","my_password","my_db");
$con = mysqli_connect("localhost","mgsv_user","mgsvpass","mgsv");

// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }
  else {
     echo "done";
  }
?>
Run Code Online (Sandbox Code Playgroud)

Dockerfile基于一个 PHP 容器,看起来像这样。

FROM php:5-apache

RUN apt-get update  && apt-get install …
Run Code Online (Sandbox Code Playgroud)

php mysql docker

5
推荐指数
1
解决办法
2万
查看次数

CentOS 7 sshd 好像不能用?

我开始了sudo systemctl start sshd,但无法从外部连接到 CentOS 7 机器。但是,在 CentOS 7 机器上我可以通过ssh.

我错过了什么?

更新#1

我根据slm的回答确认了以下内容:

  • sshd服务已启动并绑定到 IP 131.181.10.150 上的端口 22
  • 我可以执行curl -v telenet://131.181.10.150:22并看到“已连接”消息。

我的问题是当我尝试连接ssh服务器时:

$ ssh lor@131.181.10.150
ssh: connect to host 131.181.10.150 port 22: Operation timed out
Run Code Online (Sandbox Code Playgroud)

更新#2

我记得当我使用它时docker-compose,它开始下载容器,突然我失去了启动ssh连接的能力。

ip link show查看使用打开的NIC的接口数量docker0以及许多其他接口。

然后我尝试禁用 Docker 服务和防火墙,但仍然无法连接。

$ sudo systemctl stop docker
$ sudo systemctl stop firewalld
Run Code Online (Sandbox Code Playgroud)

还是没有运气。

centos sshd docker

3
推荐指数
1
解决办法
8034
查看次数

标签 统计

docker ×2

centos ×1

mysql ×1

php ×1

sshd ×1