DockerをGitで共有する時に気をつけること

立ち上げてmysqlでエラーが出る場合

まずはdocker compose up -dでコンテナを立ち上げる。その際にmysqlが立ち上がらない場合は、docker compose down -vををして一度削除する。

再度docker compose up -dをすると無事立ち上がる。

php artisan migrateがうまくいかない。

まずはcomposer installをするべき

なので、順序として

# 1
composer install
# 2
docker compose up -d
# 3
docker compose down -v
# 4
docker compose up -d

の順序が良い。

import { Post } from "@/types/PostType";
import React, { memo, useEffect, useState } from "react";
import { Link } from "../Link";
import { Card, CardActionArea, CardContent, CardMedia, Typography } from "@mui/material";
import dayjs from "dayjs";
import { PostThumbnail } from "@/types/PostThumbnailType";

interface Props {
  data: Post;
}

const PostCard = memo(({ data }: Props) => {
  const [thumbnail, setThumbnail] = useState<PostThumbnail | undefined>();
  useEffect(() => {
    const getThumbnail = async () => {
      try {
        if (data.featured_media !== 0) {
          const res = await fetch(`${import.meta.env.VITE_ENV_WP_URL}/media/${data.featured_media}`);
          const jsonData = (await res.json()) as PostThumbnail;
          setThumbnail(jsonData);
        }
      } catch {
      } finally {
      }
    };
    getThumbnail();
  }, [data.featured_media]);
  return (
    <Link href={`/article/${data.id}/`}>
      <Card key={data.id}>
        <CardActionArea>
          <CardMedia component="img" height="140" alt="green iguana" image={thumbnail?.guid.rendered ?? "/assets/default-post-thumbnail.jpg"} />
          <CardContent>
            <Typography gutterBottom variant="h5" component="div">
              {data.title.rendered}
            </Typography>
            <Typography>{dayjs(data.date).format("YYYY年MM月DD日")}</Typography>
            <div dangerouslySetInnerHTML={{ __html: data.excerpt.rendered }}></div>
          </CardContent>
        </CardActionArea>
      </Card>
    </Link>
  );
});

export default PostCard;

コメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です