알고리즘 (택배상자 / 출처 : 프로그래머스)
🧚
규칙은 간단하다.
order의 숫자 나열을 최우선으로 하되
해당 나열에 포함되지 않는 숫자들을 관리하는 sub_array가 필요하다는 것이다.
다만 이 sub_array를 초기화 하는 부분에서 많은 애를 먹었다.
시간의 복잡도가 더 높게 나왔지만 해결한(?) 방법은 아래와 같다.
특히나 두번째 조건이 헷갈려서 시간이 꽤 소모되었었는데
너무 알고리즘 문제를 덜 푼 것 같다. 감을 되찾아야겠다.
📌
def solution(order):
l = len(order)
cnt = 1
sub_o = []
answer = 0
# print(sub_o)
for one in order:
while cnt <= one:
sub_o.append(cnt)
cnt += 1
# print(f"ONE : {one}")
if len(sub_o) and one == sub_o[-1]:
sub_o.pop()
answer += 1
else:
break
# print(f"ANSWER : {answer}")
# print(f"SUB_O : {sub_o}")
# print(f"CNT : {cnt}")
return answer
도커 네트워크는 도커 컨테이너끼리 서로 통신할 수 있게 도와주는 네트워크임
이를 통해 컨테이너들이 서로 통신하는 걸 더 쉽게 할 수 있고, 보안도 더 강하게 만들 수 있음

샌드박스
샌드박스는 컨테이너를 외부 세계로부터 완전히 분리함
바깥에서 들어오는 네트워크 연결이 샌드박스 안의 컨테이너로는 들어올 수 없음
엔드포인트
엔드포안트는 외부 세계와 샌드박스 사이의 연결점임
엔트포인트는 샌드박스를 다음 요소인 네트워크에 연결함
네트워크
네트워크는 엔드포인트에서 다른 엔드포인트로, 결국은 컨테이너에서 다른 컨테이너로 데이터를 보내는 길
하나의 네트워크 샌드박스 안에는 여러 개의 엔드포인트가 있을 수 있음
-> 하나의 샌드박스 안에 있는 컨테이너는 네트워크에 전혀 연결되지 않거나, 여러 네트워크에 동시에 연결될 수 있음
-> 가령, 세 개의 샌드박스 중 하나는 엔드포인트를 통해 두 개의 네트워크에 동시에 연결된 상태일 수 있음
브리지 네트워크 : Docker의 기본 네트워크
# 1. 도커 로그인
docker login
# 이미지 받아오기
docker image pull nginx:latest
# 3. push 준비
docker image tag nginx:latest 로그인한 계정/올릴 파일명
# 4. push
docker push 로그인한 계정/올릴 파일명