Configuring ports in Docker

I am totally new to docker and the client I am working for have sent me dockerfile configuration .dockerignore file probably to set up the work environment.

So this is basically what he sent to me

FROM node:8

# Create app directory
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app

COPY package.json package-lock.json ./

RUN npm install

COPY assets ./assets
COPY server ./server
COPY docs ./docs
COPY internals ./internals
COPY track ./track

RUN npm run build:dll

COPY . .


CMD [ "npm", "start" ]

with docker build and run command (he also provided the same)

 docker build -t reponame:tag .   
 docker run -p 3000:3000 admin-web:v1 

Here, First can someone tell me what does copy . . mean?

He asked me to configure all the ports accordingly. From going through videos, I remember that we can map ports like this -p 3000:3000 but what does configuring port means? and how can i do? any relevant article for the same would also be helpful. Do I need to make docker-compose file?